﻿<!DOCTYPE html><html><head>
<base href="http://blog.csdn.net/ruglcc/article/details/7814546">

            <link rel="canonical" href="http://blog.csdn.net/ruglcc/article/details/7814546"> 

    <script data-savepage-src="https://hm.baidu.com/hm.js?6bcd52f51e9b3dce32bec4a3997715ac" src=""></script><script type="text/javascript"></script>

<meta http-equiv="content-type" content="text/html; charset=utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <script data-savepage-src="http://c.csdnimg.cn/public/common/libs/jquery/jquery-1.9.1.min.js" src="" type="text/javascript"></script>
    <style data-savepage-href="http://c.csdnimg.cn/public/common/libs/bootstrap/css/bootstrap.min.css">/*!
 * Bootstrap v3.0.1 by @fat and @mdo
 * Copyright 2013 Twitter, Inc.
 * Licensed under http://www.apache.org/licenses/LICENSE-2.0
 *
 * Designed and built with all the love in the world by @mdo and @fat.
 */

/*! normalize.css v2.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a{background:transparent}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-primary:hover{color:#3071a9}.text-warning{color:#c09853}.text-warning:hover{color:#a47e3c}.text-danger{color:#b94a48}.text-danger:hover{color:#953b39}.text-success{color:#468847}.text-success:hover{color:#356635}.text-info{color:#3a87ad}.text-info:hover{color:#2d6987}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h1 small,h2 small,h3 small,h1 .small,h2 .small,h3 .small{font-size:65%}h4,h5,h6{margin-top:10px;margin-bottom:10px}h4 small,h5 small,h6 small,h4 .small,h5 .small,h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}.list-inline>li:first-child{padding-left:0}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small,blockquote.pull-right .small{text-align:right}blockquote.pull-right small:before,blockquote.pull-right .small:before{content:''}blockquote.pull-right small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.428571429}code,kbd,pre,samp{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666666666666%}.col-xs-10{width:83.33333333333334%}.col-xs-9{width:75%}.col-xs-8{width:66.66666666666666%}.col-xs-7{width:58.333333333333336%}.col-xs-6{width:50%}.col-xs-5{width:41.66666666666667%}.col-xs-4{width:33.33333333333333%}.col-xs-3{width:25%}.col-xs-2{width:16.666666666666664%}.col-xs-1{width:8.333333333333332%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666666666666%}.col-xs-pull-10{right:83.33333333333334%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666666666666%}.col-xs-pull-7{right:58.333333333333336%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666666666667%}.col-xs-pull-4{right:33.33333333333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.666666666666664%}.col-xs-pull-1{right:8.333333333333332%}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666666666666%}.col-xs-push-10{left:83.33333333333334%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666666666666%}.col-xs-push-7{left:58.333333333333336%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666666666667%}.col-xs-push-4{left:33.33333333333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.666666666666664%}.col-xs-push-1{left:8.333333333333332%}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666666666666%}.col-xs-offset-10{margin-left:83.33333333333334%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666666666666%}.col-xs-offset-7{margin-left:58.333333333333336%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666666666667%}.col-xs-offset-4{margin-left:33.33333333333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.666666666666664%}.col-xs-offset-1{margin-left:8.333333333333332%}@media(min-width:768px){.container{width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666666666666%}.col-sm-10{width:83.33333333333334%}.col-sm-9{width:75%}.col-sm-8{width:66.66666666666666%}.col-sm-7{width:58.333333333333336%}.col-sm-6{width:50%}.col-sm-5{width:41.66666666666667%}.col-sm-4{width:33.33333333333333%}.col-sm-3{width:25%}.col-sm-2{width:16.666666666666664%}.col-sm-1{width:8.333333333333332%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666666666666%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-1{left:8.333333333333332%}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666666666666%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-1{margin-left:8.333333333333332%}}@media(min-width:992px){.container{width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666666666666%}.col-md-10{width:83.33333333333334%}.col-md-9{width:75%}.col-md-8{width:66.66666666666666%}.col-md-7{width:58.333333333333336%}.col-md-6{width:50%}.col-md-5{width:41.66666666666667%}.col-md-4{width:33.33333333333333%}.col-md-3{width:25%}.col-md-2{width:16.666666666666664%}.col-md-1{width:8.333333333333332%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666666666666%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-1{right:8.333333333333332%}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666666666666%}.col-md-push-10{left:83.33333333333334%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666666666666%}.col-md-push-7{left:58.333333333333336%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666666666667%}.col-md-push-4{left:33.33333333333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.666666666666664%}.col-md-push-1{left:8.333333333333332%}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666666666666%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-1{margin-left:8.333333333333332%}}@media(min-width:1200px){.container{width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666666666666%}.col-lg-10{width:83.33333333333334%}.col-lg-9{width:75%}.col-lg-8{width:66.66666666666666%}.col-lg-7{width:58.333333333333336%}.col-lg-6{width:50%}.col-lg-5{width:41.66666666666667%}.col-lg-4{width:33.33333333333333%}.col-lg-3{width:25%}.col-lg-2{width:16.666666666666664%}.col-lg-1{width:8.333333333333332%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-1{right:8.333333333333332%}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666666666666%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-1{left:8.333333333333332%}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666666666666%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-1{margin-left:8.333333333333332%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}@media(max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}output{display:block;padding-top:7px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-control-static{padding-top:7px}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:/*savepage-url=../fonts/glyphicons-halflings-regular.eot*/url();src:/*savepage-url=../fonts/glyphicons-halflings-regular.eot?#iefix*/url() format('embedded-opentype'),/*savepage-url=../fonts/glyphicons-halflings-regular.woff*/url() format('woff'),/*savepage-url=../fonts/glyphicons-halflings-regular.ttf*/url() format('truetype'),/*savepage-url=../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular*/url() format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1;-moz-osx-font-smoothing:grayscale}.glyphicon:empty{width:1em}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn:first-child>.btn{margin-right:-1px}.input-group-btn:last-child>.btn{margin-left:-1px}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .open>a .caret,.nav .open>a:hover .caret,.nav .open>a:focus .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media(min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-pills>li.active>a .caret,.nav-pills>li.active>a:hover .caret,.nav-pills>li.active>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media(min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:auto}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;margin-bottom:20px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%;margin-right:auto;margin-left:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#428bca}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}a.list-group-item.active .list-group-item-heading,a.list-group-item.active:hover .list-group-item-heading,a.list-group-item.active:focus .list-group-item-heading{color:inherit}a.list-group-item.active .list-group-item-text,a.list-group-item.active:hover .list-group-item-text,a.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table,.panel>.table-responsive{margin-bottom:0}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:last-child>th,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:last-child>td,.panel>.table-responsive>.table-bordered>thead>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-heading>.dropdown .caret{border-color:#333 transparent}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-heading>.dropdown .caret{border-color:#fff transparent}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading>.dropdown .caret{border-color:#468847 transparent}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading>.dropdown .caret{border-color:#c09853 transparent}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading>.dropdown .caret{border-color:#b94a48 transparent}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ebccd1}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading>.dropdown .caret{border-color:#3a87ad transparent}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{position:relative;z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicons-chevron-left,.carousel-control .glyphicons-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important;visibility:hidden!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-xs,tr.visible-xs,th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm,tr.visible-sm,th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md,tr.visible-md,th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg,tr.visible-lg,th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs,tr.hidden-xs,th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm,tr.hidden-xs.hidden-sm,th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md,tr.hidden-xs.hidden-md,th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg,tr.hidden-xs.hidden-lg,th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs,tr.hidden-sm.hidden-xs,th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm,tr.hidden-sm,th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md,tr.hidden-sm.hidden-md,th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg,tr.hidden-sm.hidden-lg,th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs,tr.hidden-md.hidden-xs,th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm,tr.hidden-md.hidden-sm,th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md,tr.hidden-md,th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg,tr.hidden-md.hidden-lg,th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs,tr.hidden-lg.hidden-xs,th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm,tr.hidden-lg.hidden-sm,th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md,tr.hidden-lg.hidden-md,th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg,tr.hidden-lg,th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print,tr.visible-print,th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print,tr.hidden-print,th.hidden-print,td.hidden-print{display:none!important}}</style>
    <style data-savepage-href="http://c.csdnimg.cn/public/static/css/avatar.css">/* CSS Document */
@charset "utf-8";


.csdn-avatar img{border:0;}
.csdn-avatar250{width:250px; height:250px;}
.csdn-avatar150{width:150px; height:150px;}
.csdn-avatar100{width:100px; height:100px;}
.csdn-avatar75{width:75px; height:75px;}
.csdn-avatar50{width:50px; height:50px;}</style>
    <style data-savepage-href="http://static.blog.csdn.net/scripts/SyntaxHighlighter/styles/default.css" type="text/css">.dp-highlighter { font-family: "Consolas" , "Courier New" , Courier, mono, serif; font-size: 12px; background-color: #E7E5DC; width: 99%; overflow: auto; margin: 18px 0 18px 0 !important; padding-top: 1px; text-align: left; }

/* clear styles */
.dp-highlighter ol, .dp-highlighter ol li, .dp-highlighter ol li span { margin: 0; padding: 0; border: none; }

.dp-highlighter a, .dp-highlighter a:hover { background: none; border: none; padding: 0; margin: 0; }

.dp-highlighter .bar { padding-left: 45px; }

.dp-highlighter.collapsed .bar, .dp-highlighter.nogutter .bar { padding-left: 0px; }

.dp-highlighter ol { 
	list-style: decimal; /* for ie */ 
	background-color: #fff; margin: 0px 0px 1px 45px !important; /* 1px bottom margin seems to fix occasional Firefox scrolling */ 
	padding: 0px; color: #5C5C5C; 
	border-right:1px solid #E7E5DC;
}

.dp-highlighter.nogutter ol, .dp-highlighter.nogutter ol li { list-style: none !important; margin-left: 0px !important; }

.dp-highlighter ol li, .dp-highlighter .columns div { list-style: decimal-leading-zero; /* better look for others, override cascade from OL */ list-style-position: outside !important; border-left: 3px solid #6CE26C; background-color: #F8F8F8; color: #5C5C5C; padding: 0 3px 0 10px !important; margin: 0 !important; line-height: 150%; }

.dp-highlighter.nogutter ol li, .dp-highlighter.nogutter .columns div { border: 0; }

.dp-highlighter .columns { background-color: #F8F8F8; color: gray; overflow: hidden; width: 100%; }

.dp-highlighter .columns div { padding-bottom: 5px; }

.dp-highlighter ol li.alt { background-color: #FFF; color: inherit; }

.dp-highlighter ol li span { color: black; background-color: inherit; }

/* Adjust some properties when collapsed */

.dp-highlighter.collapsed ol { margin: 0px; }

.dp-highlighter.collapsed ol li { display: none; }

/* Additional modifications when in print-view */

.dp-highlighter.printing { border: none; }

.dp-highlighter.printing .tools { display: none !important; }

.dp-highlighter.printing li { display: list-item !important; }

/* Styles for the tools */

.dp-highlighter .tools { 
	padding: 3px 8px 3px 10px; 
	font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; color: silver; 
	background-color: #f8f8f8; 
	padding-bottom: 10px; 
	border-left: 3px solid #6CE26C;
	border-right:1px solid #E7E5DC;
	}

.dp-highlighter.nogutter .tools { border-left: 0; }

.dp-highlighter.collapsed .tools { border-bottom: 0; }

.dp-highlighter .tools a { font-size: 9px; color: #a0a0a0; background-color: inherit; text-decoration: none; margin-right: 10px; }

.dp-highlighter .tools a:hover { color: red; background-color: inherit; text-decoration: underline; }

/* About dialog styles */

.dp-about { background-color: #fff; color: #333; margin: 0px; padding: 0px; }
.dp-about table { width: 100%; height: 100%; font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; }
.dp-about td { padding: 10px; vertical-align: top; }
.dp-about .copy { border-bottom: 1px solid #ACA899; height: 95%; }
.dp-about .title { color: red; background-color: inherit; font-weight: bold; }
.dp-about .para { margin: 0 0 4px 0; }
.dp-about .footer { background-color: #ECEADB; color: #333; border-top: 1px solid #fff; text-align: right; }
.dp-about .close { font-size: 11px; font-family: Tahoma, Verdana, Arial, sans-serif !important; background-color: #ECEADB; color: #333; width: 60px; height: 22px; }

/* Language specific styles */

.dp-highlighter .comment, .dp-highlighter .comments { color: #008200; background-color: inherit; }
.dp-highlighter .string { color: blue; background-color: inherit; }
.dp-highlighter .keyword { color: #069; font-weight: bold; background-color: inherit; }
.dp-highlighter .preprocessor { color: gray; background-color: inherit; }

/*xml*/
.dp-xml .cdata { color: #ff1493; }
.dp-xml .tag, .dp-xml .tag-name { color: #993300; font-weight: bold; }
.dp-xml .attribute { color: red; }
.dp-xml .attribute-value { color: blue; }
/*sql*/
.dp-sql .func { color: #ff1493; }
.dp-sql .op { color: #808080; }
/*ruby*/
.dp-rb .symbol { color: #a70; }
.dp-rb .variable { color: #a70; font-weight: bold; }
/*python*/
.dp-py .builtins { color: #ff1493; }
.dp-py .magicmethods { color: #808080; }
.dp-py .exceptions { color: brown; }
.dp-py .types { color: brown; font-style: italic; }
.dp-py .commonlibs { color: #8A2BE2; font-style: italic; }
/*java*/
.dp-j .annotation { color: #646464; }
.dp-j .number { color: #C00000; }
/*delphi*/
.dp-delphi .number { color: blue; }
.dp-delphi .directive { color: #008284; }
.dp-delphi .vars { color: #000; }
/*css*/
.dp-css .value { color: black; }
.dp-css .important { color: red; }
/*csharp*/
.dp-c .vars { color: #d00; }
/*cpp*/
.dp-cpp .datatypes { color: #2E8B57; font-weight: bold; }


/*tools image*/
.dp-highlighter .bar a { background-repeat:no-repeat; background-position:left top; display:inline-block; width:16px; height:16px; padding:1px; text-indent:-2000px; _width:0px; _overflow:hidden; _padding-left:16px; _text-indent:0px; }
.dp-highlighter .bar a:hover { border:solid 1px #ccc; text-decoration:none; padding:0px; background-repeat:no-repeat;_padding-left:16px;}
.dp-highlighter .bar a.ExpandSource {}
.dp-highlighter .bar a.ViewSource { background-image:/*savepage-url=images/default/ico_plain.gif*/url(); }
.dp-highlighter .bar a.CopyToClipboard { background-image:/*savepage-url=images/default/ico_copy.gif*/url();}
.dp-highlighter .bar a.PrintSource { display:none; }
.dp-highlighter .bar a.About { display:none;}</style>
    <style data-savepage-href="http://static.blog.csdn.net/Skin/skin3-template/css/style.css?v=2017.042">
@font-face {font-family: "iconfont";
  src: /*savepage-url=iconfont.eot?t=1507539230667*/ url(); /* IE9*/
  src: /*savepage-url=iconfont.eot?t=1507539230667#iefix*/ url() format('embedded-opentype'), /* IE6-IE8 */
  url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'),
  /*savepage-url=iconfont.ttf?t=1507539230667*/ url() format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
  /*savepage-url=iconfont.svg?t=1507539230667#iconfont*/ url() format('svg'); /* iOS 4.1- */
}

.iconfont {
  font-family:"iconfont" !important;
  font-size:16px;
  font-style:normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-read:before { content: "\e7b9"; }

.icon-fanhuidingbu:before { content: "\e64d"; }

.icon-shoucang:before { content: "\e81c"; }

.icon-mulu:before { content: "\e81d"; }

.icon-xinlang:before { content: "\e81f"; }

.icon-sousuo:before { content: "\e820"; }

.icon-QQ:before { content: "\e821"; }

.icon-weixin:before { content: "\e822"; }

.icon-fenxiang:before { content: "\e823"; }

.icon-erweima:before { content: "\e825"; }

.icon-daima:before { content: "\e830"; }

.icon-pinglun:before { content: "\e827"; }

.icon-xihuan-:before { content: "\e828"; }

.icon-jubao:before { content: "\e829"; }

.icon-dashang-:before { content: "\e82a"; }

.icon-shouqi:before { content: "\e82b"; }

.icon-youjiantou:before { content: "\e82c"; }

.icon-zuojiantou:before { content: "\e82d"; }

.icon-xiajiantou:before { content: "\e82e"; }

.icon-shangjiantou:before { content: "\e82f"; }

.icon-shanghuadong:before { content: "\e831"; }

.icon-xiahuadong:before { content: "\e832"; }

.icon-bokezhuanjia:before { content: "\e833"; }

.icon-yonghu:before { content: "\e834"; }

.icon-bianji:before { content: "\e838"; }

.icon-shanchu:before { content: "\e839"; }

.icon-spinner:before { content: "\e603"; }

.icon-weiye:before { content: "\e866"; }

.icon-shouye:before { content: "\e867"; }

.icon-yixihuan:before { content: "\e869"; }

.icon-yidianzan:before { content: "\e86d"; }

.icon-dianzan:before { content: "\e86e"; }

.icon-yishoucang:before { content: "\e86f"; }

.icon-fenxianghover:before { content: "\e870"; }

.icon-pinglunhover:before { content: "\e871"; }


body,h1,h2,h3,h4,h5,h6,ul,li,ol,dl,dt,dd,p,span,div,object,iframe,pre,a,abbr,cite,input,button,select,option{margin:0;padding:0;font-weight:normal;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}ul,li,ol,dl,dd,dt,form{list-style:none;margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-family:'PingFang SC','Microsoft YaHei','SimHei','Arial','SimSun'}html{height:100%}body{background-color:#f4f4f4;line-height:24px;font-size:16px;font-family:'PingFang SC','Microsoft YaHei','SimHei','Arial','SimSun'}img{border:0;outline:none}em,i{font-style:normal}button,input,textarea{outline:none;border:0}textarea{resize:none}a{outline:none;text-decoration:none;color:#4f4f4f}a:link,a:visited{color:#4f4f4f}a:hover,a:active,a:focus{text-decoration:none;color:#333}.clearfix:after{content:'.';height:0;visibility:hidden;display:block;clear:both}.container{width:1160px;margin:20px auto 0}.btn{display:inline-block;height:32px;line-height:32px;text-align:center;padding:0 20px;border:0}.btn:focus,.btn:active{outline:none;border:0;box-shadow:0 0 0 rgba(0,0,0,0)}.btn-small{font-size:14px;min-width:80px}.btn-large{font-size:16px;min-width:100px}.btn-red{color:#fff;background:#e41d1d}.btn-gray{color:#666;background:#e5e5e5}.btn-gray-fred,.btn-gray-fred:link,.btn-gray-fred:visited,.btn-gray-fred:focus{font-size:16px;color:#de686d;background:#fff;border-radius:4px;border:1px solid #de686d;line-height:30px}.btn-gray-fred:hover,.btn-gray-fred:active{color:#fff;background:#de686d}.btn-empty{display:inline-block;height:24px;line-height:22px;text-align:center;padding:0 20px;border:1px solid #e5e5e5;border-radius:12px;font-size:12px;color:#e41d1d;background:rgba(0,0,0,0)}.btn-noborder{display:inline-block;height:24px;line-height:24px;text-align:center;font-size:14px;color:#888;padding:0 0;border:0;background:rgba(0,0,0,0)}.btn-noborder:hover,.btn-noborder:active{background:rgba(0,0,0,0)}.btn-redborder{display:inline-block;height:32px;border-radius:4px;min-width:90px;line-height:30px;text-align:center;font-size:14px;color:#e41d1d;padding:0 20px;border:1px solid #e41d1d;background:#fff}.btn-redborder:link,.btn-redborder:visited{color:#e41d1d}.btn-redborder:hover,.btn-redborder:active,.btn-redborder:focus{color:#fff;background:#e41d1d}.btn-redborder-small{display:inline-block;height:24px;border-radius:4px;min-width:52px;line-height:22px;text-align:center;font-size:12px;color:#e41d1d;padding:0 20px;border:1px solid #de686d;background:#f3f7f9}.btn-redborder-small:link,.btn-redborder-small:visited{color:#e41d1d}.btn-redborder-small:hover,.btn-redborder-small:active,.btn-redborder-small:focus{color:#fff;background:#e41d1d}.dropdown-menu{box-shadow:0 0 0 rgba(0,0,0,0);border:1px #e5e5e5 solid}header .topbox{height:60px;overflow:hidden;position:relative;z-index:1;margin-bottom:22px;clear:both;width:100%;}header .topbox .text{height:0;overflow:visible;position:relative;z-index:3;width:1020px;margin:0 auto;text-align:center;}header .topbox .text a{display:block;line-height:60px;text-align:left;color:#fff}header .topbox .text a:link,header .topbox .text a:hover,header .topbox .text a:visited,header .topbox .text a:active{color:#fff}header .topbox img.con{width:100%;height:60px}header .topbox .pic{position:relative;z-index:2}main{float:left;width:810px;}main article{background-color:#fff;padding:20px 0;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}main article .csdn_top{padding:0 29px;color:#2c3033;font-size:24px;font-weight:bold;line-height:38px}main article .article_bar{padding:0 29px;color:#888;border-bottom:1px solid #e5e5e5;font-size:14px;line-height:38px;padding-bottom:8px;margin-top:5px;}main article .article_bar .artical_tag{float:left;}main article .article_bar .artical_tag .btn-empty{display:inline-block;margin:0 10px 0 0}main article .article_bar .artical_tag .original{border:1px solid #e4ebf4;padding:2px 6px;font-size:14px;color:#78909c;margin-right:20px}main article .article_bar .artical_tag .time{display:inline-block;color:#bbb;font-size:14px}main article .article_bar ul.right_bar{float:right;margin-top:5px;}main article .article_bar ul.right_bar li{float:left;margin-left:30px;line-height:28px;}main article .article_bar ul.right_bar li .iconfont{display:inline-block;vertical-align:middle;margin-right:8px}main article .article_bar ul.right_bar li .icon-xihuan-{margin-top:1px}main article .article_bar ul.right_bar li .txt{color:#788087;display:inline-block;vertical-align:middle}main article .article_bar ul.right_bar li .liked .icon-xihuan-{color:#e43c1d}main article .article_bar ul.right_bar li .but-comment-topicon:hover i,main article .article_bar ul.right_bar li .btn-like:hover i{color:#ca0c16}main article .article_bar ul.right_bar li .but-comment-topicon:hover span,main article .article_bar ul.right_bar li .btn-like:hover span{color:#ca0c16}main article .article_bar ul.right_bar li:first-child button{cursor:auto;}main article .article_bar ul.right_bar li:first-child button span,main article .article_bar ul.right_bar li:first-child button i{color:#bbb}main article .article_bar ul.right_bar .edit,main article .article_bar ul.right_bar .del{display:none;}main article .article_bar ul.right_bar .edit a,main article .article_bar ul.right_bar .del a{color:#4093c6;}main article .article_bar ul.right_bar .edit a:hover,main article .article_bar ul.right_bar .del a:hover{cursor:pointer;color:#4093c6;}main article .article_bar ul.right_bar .edit a:hover .txt,main article .article_bar ul.right_bar .del a:hover .txt{color:#4093c6}main article .article_bar ul.right_bar .edit a .txt,main article .article_bar ul.right_bar .del a .txt,main article .article_bar ul.right_bar .edit a i,main article .article_bar ul.right_bar .del a i{color:#4093c6}main article .article_content p{word-break:break-all;word-wrap:break-word;word-break:normal}main article .article_content img{max-width:100%}main article .article_content a,main article .article_content * a,main article .article_content * * a{color:#4fa1db}main article .article_content h1,main article .article_content h2,main article .article_content h3,main article .article_content h4,main article .article_content h5,main article .article_content h6{font-weight:100;margin:.8em 0;line-height:1.1;color:inherit}main article .article_content h1{font-size:2.6em}main article .article_content h2{font-size:2.15em}main article .article_content h3{font-size:1.7em}main article .article_content h4{font-size:1.25em}main article .article_content h5{font-size:1em}main article .article_content h6{font-size:.8em}main article .article_content ul{list-style:disc}main article .article_content ul li{display:list-item;list-style:disc;margin-left:40px}main article .article_content ol{list-style:decimal;}main article .article_content ol li{display:list-item;list-style:decimal;margin-left:40px}main article .article_content em{font-style:italic}main .readall_box{position:relative;z-index:9999;padding:0 0 25px;margin-top:-250px;text-align:center;}main .readall_box .read_more_mask{height:200px;background:-moz-linear-gradient(bottom,rgba(255,255,255,0.1),rgba(255,255,255,0));background:-webkit-gradient(linear,0 top,0 bottom,from(rgba(255,255,255,0)),to(#fff));background:-o-linear-gradient(bottom,rgba(255,255,255,0.1),rgba(255,255,255,0))}main .readall_box_nobg{background:rgba(0,0,0,0);background:-moz-linear-gradient(bottom,rgba(0,0,0,0.1),rgba(0,0,0,0));background:-webkit-gradient(linear,0 top,0 center,from(rgba(0,0,0,0.1)),to(rgba(0,0,0,0)));background:-o-linear-gradient(bottom,rgba(0,0,0,0.1),rgba(0,0,0,0))}main .article_copyright{font-size:14px;color:#788087;clear:both;overflow:hidden;padding:10px 20px 30px 30px;background-color:#fff;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);margin-top:-10px;}main .article_copyright span.r_ico{display:inline-block;float:right;cursor:pointer;}main .article_copyright span.r_ico .txt{color:#78909c}main .article_copyright span.r_ico:hover i,main .article_copyright span.r_ico:hover .txt{color:#ca0c16;cursor:pointer}main .reward_box{margin-top:30px;margin-bottom:30px;}main .reward_box .tit{border-top:2px solid #e5e5e5;padding-bottom:20px;text-align:center;}main .reward_box .tit .btn_reward{display:inline-block;margin-top:-30px;width:60px;height:60px;border-radius:30px;border:1px solid #ffc930;background:#fff;vertical-align:top;}main .reward_box .tit .btn_reward .icon-dashang-{font-size:3rem;color:#ffc930;text-shadow:0 0 1px rgba(255,201,46,0.5)}main .reward_box .tit .btn_reward:hover,main .reward_box .tit .btn_reward:visited{color:#fff;background:#ffc930;}main .reward_box .tit .btn_reward:hover .icon-dashang-,main .reward_box .tit .btn_reward:visited .icon-dashang-{color:#fff}main .reward_box dl{text-align:center;}main .reward_box dl dt{display:inline-block;margin:8px 5px 0;vertical-align:top;color:#888;font-size:14px;}main .reward_box dl dt a:link,main .reward_box dl dt a:hover,main .reward_box dl dt a:active,main .reward_box dl dt a:visited{color:#888}main .reward_box dl dd{display:inline-block;vertical-align:top;width:30px;height:30px;border-radius:15px;margin:0 2px;}main .reward_box dl dd img{width:30px;height:30px;border-radius:15px;border:1px solid #f0f0f0}main .article_tags{float:left;float:left;margin-left:26px;background-color:#fff;font-size:14px;}main .article_tags li{float:left;}main .article_tags li a{display:inline-block;color:#4093c6}main .article_tags li a:hover{text-decoration:none;color:#ca0c16}main .article_tags li span{color:#e5e5e5;display:inline-block;margin:0 10px 0 5px}main .article_tags li.tit{color:#bbb}main .article_collect{font-size:14px;background-color:#fff;margin-top:-22px;padding-left:30px;padding-bottom:20px;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}main .article_collect li{float:left;margin-right:25px;}main .article_collect li a{display:inline-block;color:#4f4f4f}main .article_collect li a:link,main .article_collect li a:hover,main .article_collect li a:active,main .article_collect li a:visited{text-decoration:none;color:#4093c6}main .article_collect li.tit{color:#888;margin-right:0}main .comment_box h6{font-size:14px;color:#333;margin-bottom:10px;}main .comment_box h6 span{font-size:18px;color:#ca0c16;font-weight:bold}main .comment_box dl{margin-bottom:10px;}main .comment_box dl dt{float:left;width:40px;height:40px;margin-right:10px;}main .comment_box dl dt img{width:40px;height:40px;border-radius:20px}main .comment_box dl dd{float:left;font-size:14px;color:#4f4f4f;font-weight:bold;margin-top:13px;}main .comment_box dl dd a{color:#434343;font-weight:bold;font-size:14px}main .comment_box dl dd.txt_tip{float:right;}main .comment_box dl dd.txt_tip .tip{display:inline-block;font-size:14px;color:#ca0c16;vertical-align:top}main .comment_box .comment_area{height:60px;}main .comment_box .comment_area form{width:94%;display:inline-block;vertical-align:top}main .comment_box .comment_area .userimg{vertical-align:top;display:inline-block;width:30px;height:30px;margin-right:6px;margin-top:5px;}main .comment_box .comment_area .userimg a img{border-radius:50%;width:100%;border:1px solid #e7e7e7}main .comment_box .comment_area .comment_content{width:100%;border:1px solid #d0d0d0;height:40px;margin-bottom:10px;padding:6px 10px;font-size:14px;border-radius:4px;}main .comment_box .comment_area .comment_content::-webkit-input-placeholder{color:#d8d8d8}main .comment_box .comment_area .comment_content:input-placeholder{color:#d8d8d8}main .comment_box .comment_area .comment_content:-moz-placeholder{color:#d8d8d8}main .comment_box .comment_area .comment_content:-ms-input-placeholder{color:#d8d8d8}main .comment_box .comment_area .bot_bar{opacity:0;position:relative;z-index:1;}main .comment_box .comment_area .bot_bar .add_code{float:left;display:inline-block;width:30px;height:30px;overflow:hidden;vertical-align:top;margin-right:10px;margin-left:-1px;border:1px solid #d0d0d0;border-radius:3px;}main .comment_box .comment_area .bot_bar .add_code .icon-daima{display:inline-block;vertical-align:top;font-size:2.3rem;margin:-1px -1px;height:30px;width:30px;text-align:center;line-height:31px;color:#788087}main .comment_box .comment_area .bot_bar .add_code:hover{border:1px solid #e41d1d;background:#e41d1d;}main .comment_box .comment_area .bot_bar .add_code:hover .icon-daima{color:#fff}main .comment_box .comment_area .bot_bar #lang_list{font-size:12px;position:absolute;z-index:999;left:30px;top:0;max-width:400px;display:none;}main .comment_box .comment_area .bot_bar #lang_list a{min-width:70px;display:inline-block;cursor:pointer;padding:0 5px;text-align:center;float:left}main .comment_box .comment_area .bot_bar #lang_list a:hover{background-color:#666;color:#fff}main .comment_box .comment_area .bot_bar .btn-redborder{float:right;border:1px solid #ca0c16;color:#ca0c16;}main .comment_box .comment_area .bot_bar .btn-redborder:active,main .comment_box .comment_area .bot_bar .btn-redborder:focus{background:#fff}main .comment_box .comment_area .bot_bar .btn-redborder:hover{background-color:#ca0c16;color:#fff}main .comment_box .comment_area .bot_bar #tip_comment{float:right;margin-right:10px;display:inline-block;font-size:14px;color:#999;vertical-align:top}main .comment_box{margin-top:20px;border-bottom:1px solid #f4f4f4;padding:18px 30px 0 30px;background-color:#fff}main .comment_li_outbox{box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);background-color:#fff;overflow:hidden;}main .comment_li_outbox #comment_list{padding:10px 30px 15px 30px;}main .comment_li_outbox #comment_list .noComment{text-align:center}main .comment_li_box{padding-top:10px;margin-top:-6px;border-bottom:1px dashed #e5e5e5;}main .comment_li_box .comment_list{margin-top:10px;}main .comment_li_box .comment_list dt{float:left;width:30px;height:30px;margin-right:10px;}main .comment_li_box .comment_list dt img{width:30px;height:30px;border-radius:20px;border:1px solid #e7e7e7}main .comment_li_box .comment_list dd{float:left;width:706px;}main .comment_li_box .comment_list dd ul.com_r li{margin-bottom:5px;margin-top:5px}main .comment_li_box .comment_list dd ul.com_r li.top h4{font-weight:bold;color:#4f4f4f;float:left;font-size:14px;margin-top:2px;margin-right:15px;}main .comment_li_box .comment_list dd ul.com_r li.top h4 a{color:#4093c6;}main .comment_li_box .comment_list dd ul.com_r li.top h4 a:hover{color:#ca0c16}main .comment_li_box .comment_list dd ul.com_r li.top .time{display:block;float:left;color:#ccc;font-size:14px}main .comment_li_box .comment_list dd ul.com_r li.top .floor_num{float:right;color:#ccc;font-size:14px}main .comment_li_box .comment_list dd ul.com_r li.mid{font-size:14px;color:#4f4f4f;}main .comment_li_box .comment_list dd ul.com_r li.mid div{word-wrap:break-word;word-break:break-all;}main .comment_li_box .comment_list dd ul.com_r li.mid div .btn-noborder[href="#delete"],main .comment_li_box .comment_list dd ul.com_r li.mid div .com_reply[href="#delete"]{width:60px}main .comment_li_box .comment_list dd ul.com_r li.bot,main .comment_li_box .comment_list dd ul.com_r li.mid{font-size:14px;color:#434343;}main .comment_li_box .comment_list dd ul.com_r li.bot div,main .comment_li_box .comment_list dd ul.com_r li.mid div{display:block;}main .comment_li_box .comment_list dd ul.com_r li.bot div a.btn-noborder,main .comment_li_box .comment_list dd ul.com_r li.mid div a.btn-noborder,main .comment_li_box .comment_list dd ul.com_r li.bot div button.btn-noborder,main .comment_li_box .comment_list dd ul.com_r li.mid div button.btn-noborder{padding:0;margin-right:16px;font-size:14px;display:inline-block;color:#4093c6;}main .comment_li_box .comment_list dd ul.com_r li.bot div a.btn-noborder:hover,main .comment_li_box .comment_list dd ul.com_r li.mid div a.btn-noborder:hover,main .comment_li_box .comment_list dd ul.com_r li.bot div button.btn-noborder:hover,main .comment_li_box .comment_list dd ul.com_r li.mid div button.btn-noborder:hover{color:#ca0c16}main .comment_li_box .comment_list dd ul.com_r li.bot div a.btn-noborder i,main .comment_li_box .comment_list dd ul.com_r li.mid div a.btn-noborder i,main .comment_li_box .comment_list dd ul.com_r li.bot div button.btn-noborder i,main .comment_li_box .comment_list dd ul.com_r li.mid div button.btn-noborder i{color:#4093c6}main .comment_li_box .comment_list dd ul.com_r li.bot div a.com_reply[href="#delete"],main .comment_li_box .comment_list dd ul.com_r li.mid div a.com_reply[href="#delete"]{float:right;margin-right:0;color:#e41d1d;}main .comment_li_box .comment_list dd ul.com_r li.bot div a.com_reply[href="#delete"]:hover,main .comment_li_box .comment_list dd ul.com_r li.mid div a.com_reply[href="#delete"]:hover{color:#ca0c16}main .comment_li_box .child_comment{margin-left:50px;height:0;overflow:hidden;}main .comment_li_box .child_comment .comment_list dd{width:650px;}main .comment_li_box .child_comment .comment_list dd ul li.top h4 a{font-weight:bold}main .comment_li_box .child_comment .comment_list dd ul li.mid{margin-bottom:0;}main .comment_li_box .child_comment .comment_list dd ul li.mid label .btn-noborder[href="#delete"]{width:auto}main .comment_li_box .child_comment .comment_list dd ul li.bot .btn-noborder:link,main .comment_li_box .child_comment .comment_list dd ul li.bot .btn-noborder:visited,main .comment_li_box .child_comment .comment_list dd ul li.bot .btn-noborder:active{color:#2f87ff}main .comment_li_box .child_comment .comment_list:last-child{border-bottom:0;margin-bottom:0}main .comment_li_box .list_show{height:auto}main .more_comment{background-color:#fff;text-align:center;}main .more_comment #comment_bar{padding-bottom:15px;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}main .more_comment #comment_bar .pagebox .page_btn{display:inline-block;width:20px;height:20px;font-size:12px;border:1px solid #d5d5d5;border-radius:4px;text-align:center;line-height:17px;margin-left:10px;margin-right:10px;color:#4f4f4f;cursor:pointer;}main .more_comment #comment_bar .pagebox .page_btn:hover{background-color:#ca0c16;color:#fff;}main .more_comment #comment_bar .pagebox .page_btn:hover i{color:#fff}main .more_comment #comment_bar .pagebox .page_btn i{color:#4f4f4f;font-size:12px;}main .more_comment #comment_bar .pagebox .page_btn i:hover{color:#fff}main .more_comment #comment_bar .pagebox .page_header,main .more_comment #comment_bar .pagebox .page_footer{width:20px;height:20px}main .more_comment #comment_bar .pagebox .page_activ{background-color:#ca0c16;color:#fff}main .more_comment #comment_bar .more_comment_btn{text-align:center;color:#78909c;background-color:#fff;cursor:pointer;font-size:12px;}main .more_comment #comment_bar .more_comment_btn i{color:#78909c;font-size:12px}main .recommend_tit{padding:20px 0 20px;font-size:20px;color:#333;clear:both;overflow:hidden;text-align:center}main .recommend_list{background-color:#fff;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}main .recommend_list .Recommend_loadanAnimation{margin-left:20px}main .recommend_list dl{border-bottom:1px solid #f4f4f4;padding-left:20px;padding-right:20px;padding-bottom:20px;padding-top:20px;}main .recommend_list dl dt{float:left;width:120px;height:90px;overflow:hidden;margin-right:20px;}main .recommend_list dl dt img{width:120px;height:126px}main .recommend_list dl dt .maxwidth{max-width:120px;height:auto}main .recommend_list dl dd h2{font-size:18px;color:#2c3033;font-weight:bold;margin-bottom:12px;line-height:28px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}main .recommend_list dl dd h2 a{font-weight:bold;color:#2c3033;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%;display:inline-block}main .recommend_list dl dd h2 a,main .recommend_list dl dd h2 a:link,main .recommend_list dl dd h2 a:visited{color:#2c3033}main .recommend_list dl dd h2 a:hover,main .recommend_list dl dd h2 a:active,main .recommend_list dl dd h2 a:focus{color:#e41d1d}main .recommend_list dl dd .wechat_name{font-size:14px;margin-bottom:10px}main .recommend_list dl dd .summary{font-size:14px;color:#8e959a;line-height:24px;-ms-word-break:break-all;word-break:break-all;white-space:normal !important;}main .recommend_list dl dd .summary a,main .recommend_list dl dd .summary a:link,main .recommend_list dl dd .summary a:visited{color:#2c3033;text-decoration:none}main .recommend_list dl dd .summary a:hover,main .recommend_list dl dd .summary a:active,main .recommend_list dl dd .summary a:focus{text-decoration:none;color:#ca0c16}main .recommend_list dl dd ul{overflow:hidden;}main .recommend_list dl dd ul li{float:left;margin-right:20px;font-size:14px;margin-top:10px;color:#ccc}main .recommend_list dl dd ul li.visited_num{margin-top:9px;color:#888;}main .recommend_list dl dd ul li.visited_num i{color:#ccc}main .recommend_list dl dd ul li.visited_num span{color:#ccc;vertical-align:text-bottom}main .recommend_list dl dd ul li.avatar_img{width:24px;height:24px;margin-top:8px;margin-right:7px;}main .recommend_list dl dd ul li.avatar_img img{width:24px;height:24px;border-radius:20px;border:1px solid #e7e7e7}main .recommend_list dl dd ul li.user_name{color:#888;}main .recommend_list dl dd ul li.user_name a{color:#888;}main .recommend_list dl dd ul li.user_name a:hover{color:#ca0c16}main .recommend_list dl dd ul li.fileSize{color:#ccc}main .recommend_list dl dd ul li.download_btn a,main .recommend_list dl dd ul li.download_btn a:link,main .recommend_list dl dd ul li.download_btn a:visited,main .recommend_list dl dd ul li.download_btn a:hover,main .recommend_list dl dd ul li.download_btn a:active,main .recommend_list dl dd ul li.download_btn a:focus{font-size:12px;text-align:center;line-height:20px;display:block;width:38px;height:22px;border:1px solid #8dccd9;color:#8dccd9}main .recommend_list .downloadElement{padding-bottom:16px;padding-top:16px;}main .recommend_list .downloadElement dt{height:70px;background-color:#eee;}main .recommend_list .downloadElement dt a{width:100%;display:block;}main .recommend_list .downloadElement dt a img{display:block;width:42px;height:48px;text-align:center;margin:0 auto;margin-top:11px}main .recommend_list .downloadElement dd{height:70px;}main .recommend_list .downloadElement dd div h2 a{display:inline-block;width:710px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%;display:inline-block}main .recommend_list .downloadElement dd div h2 .overflow-hide-title-height{line-height:28px;max-height:28px}main .recommend_list .nomore_box{position:relative;text-align:center;margin:0 auto;width:300px;font-size:14px;color:#888;padding:10px 0;}main .recommend_list .nomore_box a{color:#4093c6;}main .recommend_list .nomore_box a:hover{color:#4093c6}.article_content{margin-bottom:30px;color:#454545;padding:20px 30px 0 30px;}.article_content a{color:#428bca;}.article_content a:hover,.article_content a:visited,.article_content a:active{color:#ca0c16}.article_content .markdown_views ul{list-style:disc;}.article_content .markdown_views ul li{display:list-item;list-style:disc;margin-left:40px}.article_content .markdown_views ol{list-style:decimal;}.article_content .markdown_views ol li{display:list-item;list-style:decimal;margin-left:40px}.article_content .markdown_views dl{margin-top:0;margin-bottom:21px;}.article_content .markdown_views dl dd{margin-left:40px}.article_content .markdown_views dl dt,.article_content .markdown_views dl dd{margin-top:5px;margin-bottom:5px}.article_Hide{height:100px;overflow:hidden}#pop_win{display:none;position:absolute;z-index:10000;border:1px solid #dcdcdc;top:222.5px;left:630px;opacity:1;background:none 0 0 repeat scroll #fff}#popup_mask{position:absolute;width:100%;height:100%;background:#000;z-index:9999;left:0;top:0;opacity:.3;display:none}.guest_link{margin-bottom:20px;clear:both;overflow:hidden;height:80px;font-family:MicrosoftYaHei;font-size:14px;color:#4f4f4f;text-align:center;background:#e7ecf0;}.guest_link .log_ico{display:inline-block;width:40px;height:40px;border-radius:20px;line-height:40px;margin-top:20px;margin-right:20px;text-align:center;vertical-align:top;background:#afbac3;}.guest_link .log_ico i{color:#e2e9ef}.guest_link .txt{display:inline-block;vertical-align:top;margin-top:28px;}.guest_link .txt a:link,.guest_link .txt a:visited,.guest_link .txt a:hover,.guest_link .txt a:active{color:#e73131;text-decoration:underline}.login_tip_bg{position:fixed;z-index:99999;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,0.5)}.login_tip_box{position:fixed;z-index:999999;left:50%;top:30%;margin-left:-190px;width:380px;height:120px;border-radius:3px;padding-top:50px;text-align:center;background:#fff;}.login_tip_box a:link,.login_tip_box a:hover,.login_tip_box a:visited,.login_tip_box a:active{color:#e73131;text-decoration:underline}.login_tip_box .close{display:block;position:absolute;right:10px;top:10px;font-size:12px;color:#666}@media (max-width:768px){p span{white-space:pre-wrap !important}.markdown_views pre code{white-space:pre-wrap !important}}@media (min-width:768px){main .recommend_list .downloadElement dd div h2 a{width:630px}}@media (min-width:1366px){.container{width:1190px}main{width:840px;}main .comment_li_box .comment_list dd{width:710px}main .comment_box .comment_area form{width:94.2%}main .recommend_list .downloadElement dd div h2 a{width:660px}}@media (min-width:1440px){.container{width:1270px}main{width:920px;}main .comment_li_box .comment_list dd{width:800px}main .comment_box .comment_area form{width:94.7%}main .recommend_list .downloadElement dd div h2 a{width:740px}}.markdown_views .MathJax nobr .math span:last-child{border-color:transparent !important}body #article_content .keyword_red,.keyword_green,.keyword_yellow,.tag_category,.keyword{background:#06a;color:#fff;padding:4px 5px 2px;font-size:14px;border-radius:2px;margin-right:5px;word-wrap:normal}body #article_content .keyword_red.keyword{background:#f33;color:#fff}body #article_content .keyword_green.keyword{background:#060;color:#fff}body #article_content .keyword_yellow.keyword{background:#f93;color:#fff}body #article_content .tag_category.keyword{border-radius:10px;padding-left:10px;padding-right:10px;background:#cd853f;color:#fff}body #article_content .ml_item{border:1px solid #ddd;position:relative;font-size:12px;background:#eee;padding:10px;word-wrap:break-word;margin-bottom:20px}body #article_content .ml_item span a img{width:20px;border-radius:2px;margin-top:-4px}body #article_content .ml_item span a{margin-right:5px}body #article_content .ml_item div{text-align:left;padding:10px;max-height:420px;overflow:hidden}body #article_content .ml_item div a img{max-width:260px}body .csdn_loginbox .close{background-position-x:-10px;background-position-y:-19px}aside{float:right;width:298px;}aside .right_box{background-color:#fff;width:100%;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);padding-top:20px;margin-bottom:20px;}aside .right_box h3.tit{font-size:16px;color:#4f4f4f;height:28px;overflow:visible;margin-bottom:8px;}aside .right_box h3.tit span{display:block;float:left;height:28px;font-size:16px;color:#333;padding-left:20px;}aside .right_box h3.tit span em{display:inline-block;margin:0 0;padding-left:6px}aside .new_column{padding-top:12px;position:relative;min-height:220px;}aside .new_column h3.tit{cursor:pointer;padding-left:0;border-bottom:2px solid #d9dfe6;float:left;width:50%;}aside .new_column h3.tit span{padding-left:0;width:100%;}aside .new_column h3.tit span em{display:block;font-size:16px;color:#2c3033;text-align:center}aside .new_column h3:first-child{border-bottom:2px solid #f00}aside .new_column .recommend{display:block}aside dl.inf_bar{margin:0 0 22px 20px;}aside dl.inf_bar dt{float:left;width:60px;height:60px;margin-right:10px;overflow:visible;position:relative;}aside dl.inf_bar dt img.avatar_pic{width:60px;height:60px;border-radius:50%;border:solid 1px #e4edf4}aside dl.inf_bar dt span.medals{display:block;width:25px;height:25px;position:absolute;bottom:-12px;left:17px;z-index:3;}aside dl.inf_bar dt span.medals .icon{width:25px;height:25px;vertical-align:-.15em;fill:currentColor;overflow:hidden}aside dl.inf_bar dd{margin-left:70px;}aside dl.inf_bar dd h3{font-size:14px;color:#4f4f4f;font-weight:bold;line-height:26px;padding:3px 0;margin:-5px 0 10px;height:26px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:181px;}aside dl.inf_bar dd h3 a{font-weight:bold;font-size:14px;color:#2c3033}aside dl.inf_bar dd .btn-redborder-small{padding:0 5px;background-color:#fff;}aside dl.inf_bar dd .btn-redborder-small:hover{color:#fff;background-color:#de686d}aside dl.inf_bar dd .attented{background:#d6d6d6;border-color:#d6d6d6;color:#fff}aside .inf_number_box{text-align:center;border-bottom:1px solid #e3e3e3;padding-bottom:10px;}aside .inf_number_box dl:nth-child(4) dd .thinFont{font-weight:400}aside .inf_number_box dl:nth-child(4) dd a{font-size:14px;font-weight:bold}aside .inf_number_box dl:nth-child(4) dd a:hover{color:#f00;cursor:pointer}aside .inf_number_box dl{display:inline-block;width:22%;text-align:center;}aside .inf_number_box dl dt{font-size:14px;color:#788087;margin-bottom:6px}aside .inf_number_box dl dd{font-size:14px;color:#4f4f4f;width:100%;font-weight:bold;overflow:hidden}aside .writings{padding:20px 20px 0 20px}aside ul.inf_list{font-size:14px;color:#4f4f4f;padding-bottom:7px;}aside ul.inf_list li{margin-bottom:13px;}aside ul.inf_list li span{display:inline-block;float:left;margin-left:-5px;}aside ul.inf_list li span .icon-youjiantou{font-size:12px}aside ul.inf_list li a,aside ul.inf_list li a:link,aside ul.inf_list li a:visited{display:inline-block;line-height:22px;float:left;max-width:243px;color:#757a7e}aside ul.inf_list li a:hover,aside ul.inf_list li a:focus,aside ul.inf_list li a:active{color:#ca0c16}aside .public_signal{font-size:12px;margin-bottom:10px;}aside .public_signal h3{font-family:'Microsoft YaHei','SimHei','Arial','SimSun';font-size:16px;float:left;color:#333;border-left:3px solid #cf2730;padding-left:6px;line-height:16px}aside .public_signal a{float:right;color:#888}aside .public_signal .left{display:block;float:left;position:relative;}aside .public_signal .left .icon-erweima{font-size:10px;color:#4f4f4f;margin:2px 5px 0 0;display:block;float:left}aside .public_signal .left .large_qrcode{display:none;position:absolute;left:-188px;top:-80px;z-index:9999;width:180px;height:180px;border:1px #d5d5d5 solid;border-radius:3px;padding:14px;background:#fff;}aside .public_signal .left .large_qrcode span.arr:before{content:"";display:block;position:absolute;width:0;height:0;top:84px;right:-8px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:8px solid #e5e5e5}aside .public_signal .left .large_qrcode span.arr:after{content:"";display:block;position:absolute;width:0;height:0;top:86px;right:-6px;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid #fff}aside .public_signal .left span{display:block;float:left}aside .public_signal .left:link span,aside .public_signal .left:active span,aside .public_signal .left:focus span{color:#4f4f4f}aside .public_signal .left:hover span,aside .public_signal .left:active span,aside .public_signal .left:focus span{color:#333}aside .public_signal .left:hover .large_qrcode{display:block}aside .public_signal .more_z{display:block;float:right;}aside .public_signal .more_z span:hover{color:#ca0c16}aside .public_signal a.more:link,aside .public_signal a.more:visited{margin-top:-2px;text-decoration:none;color:#4093c6;}aside .public_signal a.more:link .icon-erweima,aside .public_signal a.more:visited .icon-erweima{color:#4f4f4f}aside .public_signal a.more:hover,aside .public_signal a.more:active,aside .public_signal a.more:focus{text-decoration:none;color:#4f4f4f}aside .extension_other{margin-bottom:14px;width:300px}aside .new_column ul{margin-top:50px;padding-left:20px;padding-right:20px;padding-bottom:10px;display:none;}aside .new_column ul li{padding-bottom:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}aside .new_column ul li a{color:#757a7e;font-size:14px;}aside .new_column ul li a:hover{color:#ca0c16}aside .fixRight{width:298px}aside .extension_self{margin-bottom:20px;}aside .extension_self img{width:300px;height:200px}aside ul.edu_li{padding-bottom:4px;}aside ul.edu_li li{display:inline-block;padding-left:20px;padding-right:20px;margin-bottom:10px;}aside ul.edu_li li div{position:relative;height:58px;font-size:12px;float:left;margin-right:10px;}aside ul.edu_li li div a{display:block;word-wrap:break-word;word-break:normal;color:#757a7e;}aside ul.edu_li li div a:hover{color:#ca0c16}aside ul.edu_li li div a img{width:86px;height:58px}aside ul.edu_li li div p{font-size:14px}aside ul.edu_li li div p:nth-child(2){color:#4f4f4f;position:absolute;bottom:0;left:0;font-size:12px;color:#778087;span}aside ul.edu_li li div:nth-child(2){width:160px;margin-right:0;}aside ul.edu_li li div:nth-child(2) p:nth-child(1){line-height:18px}aside ul.edu_li dt{margin-bottom:15px;font-size:14px;color:#333;line-height:22px;text-align:center}aside .padb0 h3.tit span em{border-left:3px solid #cf2730;color:#333}aside .host-column{background-color:#fff;padding-left:20px;padding-top:16px;padding-right:20px;margin-top:20px;margin-bottom:20px;padding-bottom:10px;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}aside .host-column .list-left{float:left}aside .host-column .list-right{float:right}aside .host-column h3{line-height:16px;padding-left:6px;border-left:3px solid #cf2730;font-size:16px;color:#333}aside .host-column ul{margin-bottom:10px;}aside .host-column ul li{margin-top:22px;}aside .host-column ul li .img{width:70px;height:70px;background-color:#000;position:relative;}aside .host-column ul li .img a img{width:100%;height:100%}aside .host-column ul li .img div{position:absolute;bottom:0;left:0;font-size:12px;width:100%;text-align:center;background:rgba(69,69,69,0.8);color:#fff}aside .host-column ul li .content{width:159px;margin-left:16px;}aside .host-column ul li .content .title{line-height:22px;font-size:14px;color:#757a7e;}aside .host-column ul li .content .title a{color:#757a7e}aside .host-column ul li .content .overflow-hide-host-height{line-height:20px;max-height:40px}aside .host-column ul li .content .read{color:#bbb;font-size:12px;}aside .host-column ul li .content .read i{font-size:14px;color:#bbb;margin-right:4px}aside .host-column ul li .content .article{width:64px;}aside .host-column ul li .content .article span{color:#788087}aside .host-column .unfold-btn{text-align:center;font-size:12px;color:#9db2bc;cursor:pointer;}aside .host-column .unfold-btn span,aside .host-column .unfold-btn i{vertical-align:middle;color:#9db2bc}aside .user-hotArticle{background-color:#fff;padding:20px 20px 5px 20px;margin-bottom:20px;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}aside .user-hotArticle h3{font-size:16px;line-height:16px;padding-left:6px;border-left:3px solid #cf2730;margin-bottom:20px;color:#333}aside .user-hotArticle ul li{margin-bottom:10px;}aside .user-hotArticle ul li a{display:block;font-size:14px;color:#757a7e;line-height:20px;table-layout:fixed;word-break:break-all;overflow:hidden}aside .user-hotArticle ul li div{font-size:12px;}aside .user-hotArticle ul li div i,aside .user-hotArticle ul li div span{color:#bbb;vertical-align:top}aside .user-hotArticle ul li div i{font-size:14px;margin-right:4px}aside .user-hotArticle ul li .overflow-hide-hotArticle-height{line-height:20px;max-height:40px}aside .customize{width:300px;}aside .customize .user-module{background-color:#fff;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}aside .customize .user-module h3{font-size:16px;line-height:16px;padding-left:6px;border-left:3px solid #cf2730;margin-bottom:10px;color:#333}aside .customize .user-module .content{margin-top:20px}aside .customize .imgAndText .content .left-img{float:left;width:100px;height:100px;margin-right:10px;background-color:#f0f0f0;}aside .customize .imgAndText .content .left-img a{display:block;}aside .customize .imgAndText .content .left-img a img{width:100px;height:100px}aside .customize .imgAndText .content .right-text{font-size:14px;color:#757a7e;}aside .customize .imgAndText .content .right-text .title a{display:block;font-size:14px;color:#757a7e}aside .customize .imgAndText .content .right-text .url{font-size:12px;color:#ca0c16;margin-top:20px;padding-left:6px;padding-right:6px;display:inline-block;border:1px solid #ca0c16;border-radius:4px;}aside .customize .imgAndText .content .right-text .url .overflow-hide-right-text-height{line-height:22px;max-height:44px}aside .customize .text{font-size:14px;color:#757a7e;}aside .customize .text .content a{display:block;font-size:14px;color:#757a7e}aside .customize .text .content .text-btn{margin-top:10px;font-size:14px;color:#4093c6}aside .customize .text .content .overflow-hide-text-height{line-height:22px;max-height:44px}aside .customize .img .content{width:260px;height:260px;background-color:#f0f0f0;}aside .customize .img .content a{display:block;}aside .customize .img .content a img{width:260px;height:260px}aside .modone .imgAndText{display:block}aside .modtow .text{display:block}aside .modthree .img{display:block}.right_fixed{cursor:pointer;display:none;position:fixed;bottom:10%;right:1%;}.right_fixed .r_ico{margin-bottom:20px}.right_fixed .r_ico i,.right_fixed .returnTop i{font-size:18px;margin:0 auto}.right_fixed .r_ico span,.right_fixed .returnTop span{font-size:12px}.right_fixed .r_ico i,.right_fixed .returnTop i,.right_fixed .r_ico span,.right_fixed .returnTop span{display:block;text-align:center;color:#788087}.overflow-hide{position:relative;overflow:hidden}.overflow-hide:after{content:"...";position:absolute;bottom:0;right:0;padding-left:40px}.left_fixed{position:fixed;z-index:9999;left:20px;top:150px;width:39px;overflow:visible;clear:both;}.left_fixed .left_show_button{display:none;position:absolute;top:0;right:0;width:10px;height:54px;text-align:center;background-color:#e3e3e3;cursor:pointer;}.left_fixed .left_show_button span{line-height:54px;}.left_fixed .left_show_button span i{font-size:12px}.left_fixed ul.left_menu li{clear:both;overflow:visible;width:39px;height:50px;margin:0;}.left_fixed ul.left_menu li .left-fixed-btn{border:0;padding:0;background:rgba(0,0,0,0);height:auto;vertical-align:top;}.left_fixed ul.left_menu li .left-fixed-btn span.iconbox{background-color:#fff;display:block;width:39px;height:39px;border-radius:50%;clear:both;box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);}.left_fixed ul.left_menu li .left-fixed-btn span.iconbox i{font-size:1.785rem;display:inline-block;vertical-align:top;margin-top:7px}.left_fixed ul.left_menu li .left-fixed-btn span.border_black i{color:#788087}.left_fixed ul.left_menu li .left-fixed-btn span.border_black:hover i{color:#de686d}.left_fixed ul.left_menu li .left-fixed-btn span.border_red i{color:#de686d}.left_fixed ul.left_menu li .left-fixed-btn span.border_red:hover i{color:#de686d}.left_fixed ul.left_menu li .left-fixed-btn span.border_purple i{color:#788087}.left_fixed ul.left_menu li .left-fixed-btn span.border_purple:hover i{color:#de686d}.left_fixed ul.left_menu li .left-fixed-btn span.border_orange i{color:#788087}.left_fixed ul.left_menu li .left-fixed-btn span.border_orange:hover i{color:#de686d}.left_fixed ul.left_menu li .left-fixed-btn .txt{display:block;text-align:center;clear:both;font-size:12px;color:#de686d}.left_fixed ul.left_menu li button.liked .border_red i,.left_fixed ul.left_menu li button.liked .border_red:hover i{color:#de686d}.left_fixed ul.left_menu .like-btn-box{height:70px}.left_fixed ul.left_menu li.menu_con{height:0;margin-bottom:0;overflow:visible;width:200px;position:relative;}.left_fixed ul.left_menu li.menu_con .list_father{display:none;position:absolute;z-index:9999;left:55px;top:-56px;border:1px #d5d5d5 solid;border-radius:4px;width:200px;height:244px;padding:0 16px 10px;background:#fff;}.left_fixed ul.left_menu li.menu_con .list_father .arr_box{position:absolute;right:50%;margin-right:-23px;bottom:10px;z-index:99999;}.left_fixed ul.left_menu li.menu_con .list_father .arr_box .arr-btn{width:16px;height:16px;margin-right:5px;overflow:hidden;border-radius:50%;border:1px solid #788087;}.left_fixed ul.left_menu li.menu_con .list_father .arr_box .arr-btn i{font-size:10px;color:#788087;display:block;line-height:16px;margin:0;vertical-align:top}.left_fixed ul.left_menu li.menu_con .list_father .arr_box .arr-btn:hover{border:1px solid #ca0c16;}.left_fixed ul.left_menu li.menu_con .list_father .arr_box .arr-btn:hover i{color:#ca0c16}.left_fixed ul.left_menu li.menu_con .list_father .arr_box .scroll-up i{margin-left:1px;margin-top:-1px}.left_fixed ul.left_menu li.menu_con .list_father .arr:before{content:"";display:block;position:absolute;width:0;height:0;top:17px;left:-8px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:8px solid #d5d5d5}.left_fixed ul.left_menu li.menu_con .list_father .arr:after{content:"";display:block;position:absolute;width:0;height:0;top:19px;left:-6px;border-top:4px solid transparent;border-bottom:4px solid transparent;border-right:6px solid #fff}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li{clear:both;overflow:hidden;width:100%;}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li{width:100%;height:24px;}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a{font-size:12px;font-weight:normal;color:#4f4f4f;display:inline-block;width:95%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a:link,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a:visited{color:#4f4f4f}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a:hover,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a:active,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li li a:focus{color:#c92027}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li{clear:both;overflow:hidden;padding-left:20px;width:100%;}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a{font-size:12px;font-weight:normal;color:#434343;margin-bottom:2px}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a:link,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a:visited{color:#434343}.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a:hover,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a:active,.left_fixed ul.left_menu li.menu_con .list_father ol.first_li ol.second_li a:focus{color:#c92027}.left_fixed ul.left_menu li.menu_con #csdnBlogDir{height:190px;margin-top:12px;margin-bottom:10px;overflow-y:auto;overflow-x:hidden}.left_fixed ul.left_menu li.menu_con #csdnBlogDir::-webkit-scrollbar-track{border-radius:5px}.left_fixed ul.left_menu li.menu_con #csdnBlogDir::-webkit-scrollbar{width:0;background-color:rgba(220,220,220,0.5);border-radius:5px;-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,0)}.left_fixed ul.left_menu li.menu_con #csdnBlogDir::-webkit-scrollbar-thumb{background-color:rgba(220,220,220,0.5);border-radius:5px;-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,0)}.left_fixed ul.left_menu li#share_box{position:relative;z-index:1;}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox{display:none;position:absolute;left:0;top:42px;width:39px;height:165px;}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside{width:39px;height:42px;margin:0;margin-top:8px;float:left;position:relative;}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside a{background:rgba(0,0,0,0);padding:0;margin:0;height:40px;position:absolute;width:39px;z-index:9999;top:0;left:0}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside span.text{display:block;text-align:center;margin-top:0;font-size:12px;color:#888}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside span.iconbox{display:block;width:39px;height:39px;line-height:22px;border-radius:50%;text-align:center;clear:both;background-color:#fff;}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside span.iconbox i{font-size:1.785rem;display:inline-block;vertical-align:top;margin-top:7px}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside span.border_red2 i{color:#78909c}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside span.border_green i{color:#78909c}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside span.border_blue i{color:#78909c}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside:hover span.border_red2 i{color:#e2513f}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside:hover span.border_green i{color:#00bd17}.left_fixed ul.left_menu li#share_box .bdsharebuttonbox .outside:hover span.border_blue i{color:#4cafeb}.left_fixed ul.left_menu li#share_box:hover .bdsharebuttonbox{display:block}.left_fixed ul.left_menu li:first-child{height:70px}.left_fixed ul.by_left li{height:40px;border-top:1px solid #e3e3e3;}.left_fixed ul.by_left li .left-fixed-btn span.iconbox{border-radius:0}.left_fixed ul.by_left .like-btn-box{background-color:#fff}.left_fixed ul.by_left .menu_con{border:none}.left_fixed ul.by_left li:first-child{height:52px;}.left_fixed ul.by_left li:first-child .txt{margin-top:-12px;background-color:#fff}.left_fixed ul.by_left li#share_box .bdsharebuttonbox{top:39px;}.left_fixed ul.by_left li#share_box .bdsharebuttonbox .outside{margin-top:0;height:39px;}.left_fixed ul.by_left li#share_box .bdsharebuttonbox .outside span.iconbox{border-radius:0}.left_fixed ul.left_menu li.smallShow .list_father{display:block}.pop_CA_cover{display:none;position:fixed;left:0;top:0;width:100%;height:100%;background:rgba(0,0,0,0.3);z-index:999999}.pop_CA{display:none;position:fixed;left:50%;top:50%;margin-left:-325px;margin-top:-179px;width:650px;background:#fff;border:solid 1px #cecece;box-shadow:0 0 10px 0 #cecece;z-index:9999999;}.pop_CA .CA_header{height:50px;line-height:50px;padding:0 20px;border-bottom:solid 1px #cecece;position:relative;text-align:left;font-size:16px;color:#333;}.pop_CA .CA_header .cancel_icon{display:block;width:15px;height:15px;position:absolute;right:16px;top:18px;background:/*savepage-url=http://static.blog.csdn.net/images/cancel_icon.png*/url(data:image/png;resource=38;base64,) center no-repeat;cursor:pointer}#report_dialog{display:none;position:fixed;left:30%;right:33%;top:33%;z-index:999999}.panel_head{color:#333;font-size:14px;font-weight:bold}#panel_report{background:#fff;border:solid 1px #ddd;width:440px;padding:8px 8px 20px 8px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px}#panel_report .pop_table{line-height:20px;margin:10px 0 0 12px}#panel_report th,#panel_report td{padding:4px 0;vertical-align:top;font-size:12px;color:#666}#panel_report th{text-align:right;font-weight:normal}#panel_report h3{line-height:60px}#report_other_content{height:16px;padding:0;border:solid 1px #999}#btnSubmitReport{border:0}.pop_table td{font-size:12px;color:#666;}.pop_table td a{color:#6a3906}.pop_table td label{font-weight:normal}.pop_table td textarea{border:solid 1px #ddd}.pop_table td #btnCloseReportDialog,.pop_table td #btnSubmitReport{vertical-align:middle}#bdshare_weixin_qrcode_dialog{height:348px !important}.bds_tsina{background-color:#f00}nav{font-size:16px;font-weight:normal;color:#abb0b4;height:70px;background:#fff;border-top:1px solid #e4ebf4;border-bottom:1px solid #e4ebf4;margin-bottom:20px;display:none;}nav .container{position:relative;padding:0}nav h1{float:left;margin:11px 0 26px 16px}nav .nav_com{height:45px;margin:10px 0 0 10px;padding:12px 15px 16px 0;overflow:hidden;float:left;background:#fff;min-width:732px;border:1px solid rgba(0,0,0,0);position:absolute;left:105px;z-index:999;}nav .nav_com ul{float:left;width:670px;}nav .nav_com ul li{float:left;margin:0 14px 10px;height:30px;overflow:hidden;padding-bottom:2px;}nav .nav_com ul li a{color:#231916;font-weight:200px;}nav .nav_com ul li a:link,nav .nav_com ul li a:visited{font-weight:normal}nav .nav_com ul li a:hover,nav .nav_com ul li a:active{color:#ca0c16}nav .nav_com ul li.active{border-bottom:4px solid #ca0c16;}nav .nav_com ul li.active a{color:#231916}nav .nav_com .all_nav{float:left;font-size:16px;color:#231916;cursor:pointer}nav .search_bar{float:right;background:#fff;width:300px;height:36px;border:1px solid #ddd;border-radius:4px;margin-top:17px;margin-right:15px;}nav .search_bar input.inp_search{font-size:14px;color:#778087;display:block;float:left;width:262px;padding:5px 10px;border:0;height:34px}nav .search_bar .ico_search{background-color:rgba(0,0,0,0);color:#8e8e8e;padding:0 10px;font-size:14px;display:block;text-align:center;width:34px;height:34px;float:left;line-height:34px;}nav .search_bar .ico_search i.iconfont{color:#8e8e8e}@media (min-width:1280px){nav{display:block}}.dp-highlighter,.prettyprint{
    position:relative;
    overflow-y: hidden;
    overflow-x:auto;
}
.pad_bot{
    padding-bottom:45px!important;
}
.save_code{
    display: none;
    position: absolute;
    /*width: 105px;*/
    height:60px;
    right: 30px;
    top:5px;
    font-size: 14px;
    color:#fff;
    cursor: pointer;
    z-index:2;
}

#mask_code{
    display: none;
    position: fixed;
    width:100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0,0,0,0.3);
    z-index:990;
}

/*.gist_edit{
    position: absolute;
    left:50%;
    top:50%;
    width: 505px;
    height: 330px;
    margin: -165px 0 0 -252px;
    z-index: 9999;
}*/

.gist_edit{
  display: none;
  position: absolute;
  left:50%;
  top:50%;
  width: 505px;
  height: 330px;
    /*margin: auto;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);*/
  margin: -165px 0 0 -252px;
  z-index: 9999;
}

.save_snippets {

    clear: both;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dddcdd;
    font-size: 14px;
    font-family: "Microsoft YaHei";
    box-sizing:border-box;
}
.save_snippets .tit {
    clear: both;
    overflow: hidden;
    height: 45px;
    line-height: 45px;
    border-bottom: 1px solid #dddcdd;
    padding: 0 20px;
    box-sizing:border-box;
}
.save_snippets .tit h3 {
    float: left;
    font-weight: normal;
    font-size: 16px;
    height: 45px;
    line-height: 45px;
    padding: 0;
    margin: 0;
    box-sizing:border-box;
}

.gist_edit_list{
    padding:0;
    box-sizing:border-box;
    width:100%;
}
.save_snippets .tit span {
    display: block;
    float: right;
    color: #999;
    height: 45px;
    line-height: 45px;
    box-sizing:border-box;
}
.save_snippets .tit span a {
    color: #0000ff;
    text-decoration: underline;
}
.save_snippets .tit span a:link, .save_snippets .tit span a:visited, .save_snippets .tit span a:hover, .save_snippets .tit span a:active {
    color: #0000ff;
    text-decoration: underline;
}
.save_snippets .con_form {
    clear: both;
    overflow: hidden;
    padding-top: 20px;
    box-sizing:border-box;
}
.save_snippets .con_form .gist_edit_list li {
    clear: both;
    overflow: hidden;
    min-height: 32px;
    margin-bottom: 20px;
    list-style: none;
    box-sizing:border-box;
}
.save_snippets .con_form .gist_edit_list li span.red {
    display: block;
    float: left;
    line-height: 36px;
    height: 32px;
    color: #f00;
    padding-right: 10px;
    margin-left: 20px;
    box-sizing:border-box;
}
.save_snippets .con_form .gist_edit_list li span.txt {
    display: block;
    float: left;
    height: 32px;
    line-height: 32px;
    padding-right: 20px;
}
.save_snippets .con_form .gist_edit_list li .form-input {
    float: left;
    width: 398px;
    height: 30px;
    border: 1px solid #dddcdd;
    background: #fafafa;
    padding: 0 10px;
    color: #666;
    font-family: "Microsoft YaHei";
    box-sizing:border-box;
}
#divSearchTags{
    float:left;
    width: 398px;
    color: #666;
    font-family: "Microsoft YaHei";
    border: 1px solid #dddcdd;
    background: #fafafa;
    padding: 0 10px;
    margin-left:2px;
    box-sizing:border-box;
    text-align:left;
}
#divSearchTags .label span{
    color:#666;
}
.insertTag{
    height: 30px;
    width:208px;
    color: #666;
    background: none;
    border:none;
    box-sizing:border-box;
}
#divSearchTags .blog_tag{
    display: block;
    float:left;
    margin:7px 10px 7px 0;
    padding:0 5px;
    background: #f3f3f3;
    color:#666;
    border-radius: 10px;
    box-sizing:border-box;
}
#divSearchTags .blog_tag span{
    display: block;
    float: left;
}
#divSearchTags .label a{
    color:#666;
    margin-left:8px;
    box-sizing: border-box;
}
.save_snippets .con_form .gist_edit_list li .form-textarea {
    float: left;
    width: 398px;
    height: 60px;
    font-size: 12px;
    border: 1px solid #dddcdd;
    background: #fafafa;
    padding: 3px 10px;
    color: #666;
    font-family: "Microsoft YaHei";
    box-sizing:border-box;
}
.save_snippets .bottom-bar {
    clear: both;
    overflow: hidden;
    border-top: 1px solid #dddcdd;
    padding: 17px 20px;
}
.save_snippets .bottom-bar .btn-submit {
    border: 1px solid #888;
    background: #f0f0f0;
    border-radius: 2px;
    border-left: 0;
    border-top: 0;
    width: 45px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    float: right;
    margin-left: 7px;
    font-size: 12px;
    font-family: "Microsoft YaHei";
    color: #333;
}


/*code代码行号错位*/
.file_holder .file_content.code table.lines pre.line_numbers{
    width:40px!important;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2ZvbnRzL2ljb25mb250LmNzcyIsIm1vZHVsZXMvY29tbW9uLnN0eWwiLCJtb2R1bGVzL21vZF90b3Auc3R5bCIsIm1vZHVsZXMvbW9kX21haW4uc3R5bCIsIm1vZHVsZXMvbW9kX2FzaWRlLnN0eWwiLCJtb2R1bGVzL21vZF9sZWZ0X2ZpeGVkLnN0eWwiLCJtb2R1bGVzL21vZF9wb3Auc3R5bCIsIm1vZHVsZXMvbW9kX25hdi5zdHlsIiwiLi4vLi4vLi4vY3NzL2Jsb2dfY29kZS5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRjtBQUNBO0FBQ0E7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QVF2RkEsQVBBQSxLQUNBLEdBQ0EsR0FDQSxHQUNBLEdBQ0EsR0FDQSxHQUNBLEdBQ0EsR0FDQSxHQUNBLEdBQ0EsR0FDQSxHQUNBLEVBQ0EsS0FDQSxJQUNBLE9BQ0EsT0FDQSxJQUNBLEVBQ0EsS0FDQSxLQUNBLE1BQ0EsT0FDQSxPQUNBLE9BQ0UsT0FBTyxFQUNQLFFBQVEsRUFDUixZQUFZLE9BQ1osV0FBVyxXQUNYLGdCQUFnQixX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Q0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNKO0FBQ0E7QUFDQTtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0o7QUFDQTtBQUNBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDRjtBQUNBO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNKO0FBQ0E7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNKO0FBQ0E7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0o7QUFDQTtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0o7QUFDQTtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNKO0FBQ0E7QUFDSTtBQUNBO0FBQ0o7QUFDQTtBQUNJO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0o7QUFDQTtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNKO0FBQ0E7QUFDSTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0o7QUFDQTtBQUNJO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNKO0FBQ0E7QUFDSTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDSjtBQUNBO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDSTtBQUNKIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIlxuQGZvbnQtZmFjZSB7Zm9udC1mYW1pbHk6IFwiaWNvbmZvbnRcIjtcbiAgc3JjOiB1cmwoJ2ljb25mb250LmVvdD90PTE1MDc1MzkyMzA2NjcnKTsgLyogSUU5Ki9cbiAgc3JjOiB1cmwoJ2ljb25mb250LmVvdD90PTE1MDc1MzkyMzA2NjcjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIC8qIElFNi1JRTggKi9cbiAgdXJsKCdkYXRhOmFwcGxpY2F0aW9uL3gtZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSZ0FCQUFBQUFCck1BQXNBQUFBQUtZZ0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCSFUxVkNBQUFCQ0FBQUFETUFBQUJDc1A2ejdVOVRMeklBQUFFOEFBQUFSQUFBQUZaVzkwcGxZMjFoY0FBQUFZQUFBQUZjQUFBRHNseElHY3RuYkhsbUFBQUMzQUFBRkxNQUFCOElEM1JiYzJobFlXUUFBQmVRQUFBQU1RQUFBRFlQTFBnemFHaGxZUUFBRjhRQUFBQWdBQUFBSkFmcUE1aG9iWFI0QUFBWDVBQUFBQ1FBQUFDVWsrNy8rV3h2WTJFQUFCZ0lBQUFBVEFBQUFFeVhwcURZYldGNGNBQUFHRlFBQUFBZkFBQUFJQUU3QU90dVlXMWxBQUFZZEFBQUFVVUFBQUp0UGxUK2ZYQnZjM1FBQUJtOEFBQUJEZ0FBQWFZTGdQWmdlSnhqWUdSZ1lPQmlrR1BRWVdCMGNmTUpZZUJnWUdHQUFKQU1ZMDVtZWlKUURNb0R5ckdBYVE0Z1pvT0lBZ0NLSXdOUEFIaWNZMkJrL3M4NGdZR1ZnWU9waytrTUF3TkRQNFJtZk0xZ3hNakJ3TURFd01yTWdCVUVwTG1tTURnd1ZMd29aRzc0MzhBUXc5ek0wQWtVWmdUSkFRQXVuZ3p5ZUp6RjBqbE9KRUVVaE9HL2FQWmhYNFpoNko0R0dzVE9zQm5nb0JFKzF3QmhzSGxjRFkvVE5HRmdjUUdJN0FBRGlURVJtZnBLcXN4U1p1bTlBSHFBbW0xYU4xVFBWSlR4NU5XcXMxNWpzTFBlellQZmZ6UFdXYmxyMTlxbmovZHFxS1ZsSGVoSTU3clE3Y3VMdjNuZnE2dnB2UlVkNnN4N2w1Mjl6MGZsYzk5bm5TWFBZLzV4NGxuMjZyNnh5L2YzMEVzZi9RejQvaDhNTThLby8yYWNDU2FaWXBvaGZqTERMMlo5eWh3Ti90QmtuZ1VXYWZsRXF0Ny8zdi9sby9xK3F6K09vZktvSHQ3ZVhCWHUzdmdYMjdWd3hXbWZSa25INDMyNEM2Z2VKUzFxUkVtUm11RWVvZmx3dDlCQ3VHOW9NZHhCMUlxU0xpMkh1NHBXd3YxRnErRk9vN1Z3ejlGNnVQdG9JNXdEdEJsT0JOb0tad050aDFPQy9vYnpnbmFpVkVXNzRReWh2WENhMEg0NFYrZ2duREIwR000YU9ncW5EcDBGcFRibjRTU2lpNkRVNlRJb2Rib0tTcDJ1ZzFLbm02RFU2VFpZZWdWRmtYeFllSnlkT1F1UVZGZVY3OXo3UHYzNjgxNi83bjd2OWIrbnYyKytQY1AwNXpIRE1ETmtCdVlERVFLRUVHUVdHS0ZRWWtnaXNHUXBTQVlRS3lBUlRhS2xJYnFKRzM4cE5Mdlp4Q1J1S3VLYUxXTjIyU3BBalpSdTRtZmRFdU82VW43S05mUmp6MzA5UXdaSnRrcDdldTczM0hQUFBlZmM4N25OQ1J4MzVjZjBCUnJsd2x3cnQ0QWI1Vlp4SElnZGtGTklDckpXdFV3NlFNOEt1aGxScUpXM3NsSStWNmFMd2N5SkVhTzNYaTJab2lTcW9FQWFLdG5ldWxVbUZ0U3FnMlFSOUJvcGdGZ2l2aVpVVElib1I4RWJ0ZEpIbkVueVdkQXorYVE2Mk9WTWRBNUZlbHZDbnIzK1VDZ1dDaDMzaUlMZ0lZUlhGYmpkTkdSQjlvck80NElhMTEvSXRKRU0rR05XZk1XdGdaWkVhTXQ5MVoycG9pa0R6TXhBT05HaWZHRklpMnY0M1I4M3dxR1lGQXg0b3ZGQXZoQ0J2Zi9waTRiOXFkSlBPZnp3ZU5ZRy9ROUt1SVhjR0xlSE80SW5yVnBsc0VwNUJTU3NjeExXb3E2WmFXSVBndDJMdFduMzJwWGV1bzEvbFRTWWh0bXpvRDRFUlcyUVZIcE5yWlFYY1luZ29pZ2hIMGlwaWN2QzFZYTV3TERNaWxteEswYXQwbU5YRUVQZE1HMEdiSW1TVm1mNHdhUS9GTW15NFo2ZWlYMnQ3ZnNtRm5RUGoxSmhnUG9EZkdqdjBFTFREd0h2U0N3bGVBS0VxckhLNEFkTVVWQ2w0Y3Y3ZmZicTloM3Y3OSs0b043MUxpcXJmYmxhKzNEUjlQWjB5Skg4Mk1CZHlYVHJvYkVkM1R6d1FIMFVnQURROG83MHZsdkRpWlhkZHMrNysyL2IwZDdhdnRCUFRzZ1NiNXNxcWFZek5WRE5Qa0h3Tmw0Ymx6eEFCUk5VS1J6QXRWNlBJaXNRbFJDSk10RUJ2L0tYRWl1ZFhCNjhrckdlRDRnUzZJb09FUEViRVBFVTFBeUJLZ1dlRU55VUxvUndTNWN2S3FPb0N2Q0RHeUdnbG55Y0IrVXd3M1AwSUJma29xaDFDN21sM0VwdUUzY0h5cU9VVTBHTXBHRUllWTNxWlFrVnZWS3IxUEpGWkdzS0lnYnFWWDB4VkV0U2hPbG9DWnQxcG1wNnNkUUJHa0tpcUdwVmR4TGJoaDVHRG1zb2tDeHlYVU9oRkxNNWxHL0VZTHBhMDhwQVZERWtQaUlFZ3RMeDQ1SVdFQnZmMnRpKzhTZHc1aTRqa3pGWTRaUDR1d1JSRk82aUhxZ0dqUWM2dGhzWjZCQ0Y3ZHQ1YVhsQUE5QUNseDl2MW5UajVjZHpQVDA1dWpIWEEyWHl6Nkw0aUJUMGczajh1T2pYcEY5ZnZOZ09rREcreERCajhSb3ZTZnlYS09wOFNYWCsrMjh5Um8rK2xKZVdpUUxKWFlNVDYwcFBiZzV6dm94NlRCai84TTdPY0JITzRqZ2haOGtnNW1kUG1HMmVXQWFqZVVJcmk4ZkhFL2ZhZExvOTRiemh2SkZvTC9VQ3JCa2l3ME5yQUhxZEdWZ21Hd3FVQzQzVGhUSW9wbWVtQlZxY0g3VWdsNms2dkphUXRjT1hMNVdxOElqelpXL1FSOVZpRDBCUDhmSWxYOURMY2VLVksxZCtoTExNY2o3TzVQSmNON2NJN3hZWHJqRGJnQkpDSzlHR0lpdERQc3ZhTk05S0pzUnFxYzJkWlpJb0E3ampabVVRNXNiTjdDQ1VvZEN2NnJyS0NqREk1eU1KaUVjYUd5THgrTE1EYWppc0RxalJLSjEyQnlMTjJjdjcrNVZ3V09sWFRaTnVtVDlCbmsxVTQvRnFvbGxlNFpMZG1VeDNzbGs2SDA5MnR3QzB1SDJVVVhlUzR5VGs4ZXU4VE51NEZOZkcxYmhCUE5XN21ZWUtwWUpWcmFONXdNc3JpVzdEUUJOb3NMdXNBRlhZT0E2aVdhRmxtQVZUOE1vekN6a0lKWHV1VVVTT2cxMHZFMGtzQTFxWE5KR3VHNEd2Zk9FS0o2MmEyUHBpT1NUNCtUaGR1UzhSQUwvbzgzVXZKL1IvM3p6MFdjSC8zT0hEajJINThtQlhQTFZyYUxnYVRSNklSRHBpM3RiT21MZlRFL1JRTFNnTFpFQklaUlErcUk5dHJnYmpubEJ3L0w3M3BFOEtadExQQzVMWkVncEVCVVhKai9Rb0xmRFJtZEVISjZjbjI4S0RWa2lBTE9URDFZemlKY3JTL3UxZmhYOVZENjlidDhYbmxzN0hqRzE5OVlvYTJycG9vUFpsajJxVndtcXJWU0NpcWtoaVVIMVJWWDJKWU8vV2Q3WDRxTmFTNE5YT25jZVRBYjhucW1qWnVJOVNOV0ZTajFFYm5kTm4xS0Y3MFJvVW1ENTNvejloK296cWpGeU5pQkl5VVZmUStvQ0VmUnhGNXY1RDFqeGZQM0REYzcvbCtkOCs5OXh2QmF0NHp1ZUh6c2JyZTA1U2VuTFBua2NvZldUR1BGK3lCSGNheXhzTzFNLzdrc0ZjSjkzTUFKcGdKM0Yvd1Azdm9iOUhlN1FKTlJlRlcySml4UzlhRU53NUErN3Vlb1ExbUxCZGN5ODFpVkZjNmViUTd1Y3NKRm9zTlpVRC9VVnZEWFdnRzF6bktDMXdyVDZPbHo3aDk0QXNrMjJUblZNOXBaWDU2UnRENEErRFRFaXBqamJVREdWRU5OV0JmQ0srU0FaQ0U5dmJxeHQ3ZkFsZmFsdHIyMk55SUJpSXFqeVB1am9rRTBxSXR6Vk9nYUNOWGpFaXdObEF4dXZQeVd2K3JxUnJtdEx4eVcwMDNHbjZUQzlRYXU4ZERZL3d0S29BS1N4SlJHSkZ3U3VnZHpSVUNrbWR4R3RtVEtGZVlHN0N2ejFQZ0plTUVuTWRpZlM2UTczcTFUdmV3aGxjaHV2aCtyZ1I3a1prRzU0cllvcDVQTHhrWDVWV3FUZ1hHWUJwelJjanltOXVKcXlnSlhjdGhIMjFSWjc1NEplcFQ5T3lBN2w3Q2t1WEEzL21VMGRmU1doT2w5N1MwaDZMa2JzVDcwbllpU09uS0QxMTVKNm5lRmptOUxHWmFIU0xvcVAvaVViL2tWbUtDRUlXNkdQN1dndmdrNGJlMzdOditRZFBVWEw4VGpJZFJkRDJhT1BwRFhYSlJ4KzY0ODZIS0gzb3pzVTdTTDQ1NGZ3UjlLUmhKTkdSTmV2WmVPR2I5RE4wbUt0eXd4Z1hiV3llMmFyYlZjdWVVMFFMQXlYZE1GRXA4azJOUUE4a21hSStPMDlwVTBsY05rQ3VUR3F6U3EwUW1NY2FjcWx6UmV5NUVIaE94NVlVSnFZSm1aN0lEUzJJZy9SV1Axa3o0U3loVzhZbk52TVFXekNVNzF3RXNLaXpzeCtnMzVuVVM2a2c2V2M5TlYyRU0rNW9wd3NCTVdndnZxL1FIby9lbmtnQzJUSTVzWVhFRnd6bDR0R2RpUlRaTW9IZFVJanNsYjNqbXdqWk5KNGY2b25EVCtjV0kwSW5neGoxSmtLOW1GYWRYODZiNVB6SW80T29Hek1jUlp2cDQxU01JMDB1Z1g2cEEzMUJoYk9SWjFuTi9iT3dBUHdQNTJzVkRmK2I0N1c4bHRleXpNbXplWHQyem1UejU1eHVPTXYrcDV5TFlEb1h2emFGSC9KemQvVGkxQlNZMkowZHhRS2VoTE9YQWM1K2pZRTJ6b1BoL0lJY20ycnNRVGljK0NlRzR5d0NzdG1wS2V4UFRiR1lrTHBGQjVsQ1g5cUNkcDRyaW1oK1N0VWhxUGRtd0lpb2VPTWpLRThjczhOMUhKSENjd0RXVzFBUzNFMWx5aXdLVmhxbGh3OVRPazY5RVJuMjg3SXVrNkczaHJVbTRIZWJzQS96ZkJDcnc0ZW96RS9LUk1SYmVFb21BaTg3OTFNYVJQOXo2REJPQjNuK1lhd1lxU0x5KzFIazkyYU1valF1anBwNUkvY3U1UEhjMWFwYzF3aTdBUUJxV1FVakY2TVhTYmJSemRvWUd1QTFsRkJwZFluRndMUHhBN3BqdzlTQVN4UUs5VUxoWjlkVTJ4cGNmUUpnY3VFM3N5UExlWVVmV0ZoL2VlRWt3SVFYU3NtWHd2Rmp4eUFkZWlsWndsZ3ZRUkVEa0hCcFllbFB2bkFqTE85ekFuMnJTWDdaallJd3NyaE9WdmZCYi9xV040Nm11b0RvNU1RSkxLQXJCYjlKbGtwSko0RDNFTzNQMTNtVnJrSlB2SUg3RVBkVkZpZGF6UXZYdE1ib2dFM1hBN01qdW1hNnQybkI3YnJrV21pSnhVY290bTUzb1ZXcWxUQWFkK052OThZeXBqQnpqMGdNdUFiUW1nUE1NSnMrQnpPSGxMS05JODJOQ1daQVYzZTFYUHB5czdrUjR5MURSaHZHM2JrVlZ1K0dnaEZKRHhlRzl2Y2ZBMWljdTdtK1lySkhsQVJQUnM5bmhnNFA1OFl5b3p2VEk3bWhRME9xS2dkNDlORTlLeWJyTjJWcnNHdnhrbUlwWFUrUVVGQUt5VFFjU1kyM0xsbTBOYWc2bHA3eWlLSlVtWnl3Yjg0dUJqZzZ1YktybkI5T0VSSXlpaHNXckZ4NmR5UThraG5MRFI4ZVNsOVpNclFMYXRuVnRZbmxBeEpWdk1FZ2JwVWJTZlVIdFcycG9aYTJpWFE0UW1STlVrSWtibWRLWlAzQnNZZ0J1YXh1Rm50OHVscGE5NWwzMzlJOXZYREZlRGRTTGFtUVduUndhV0ZOOS9iSnpsV0YwWmwrRlNUQ2kyTDMrSXI2cHE3SjVRZkhyWUMzTGN2N1FmSVNJNUpJNUFiZU85VTRnOW1GSUVpVnNVbDd1bnZkaGsvZlVsYjkzUVZLZGFNbDN6NTI3KzNidXRjV2xzNE1KT2d0WUUwY1dqRlIzbVJQakMrU3FLUXVtaGtwcnV4Y3QzSEhnQlpPSmNJNkwwc1FJTGwyYjJEV1pqL1BFenFHbGlqUExlWnVkdThHQy9sWjBNbTBQazh4dURUY25NNnFvbndsSmlXV3dsWHRrZzFWRkIvZWdJaUp2dGhnaHJ1WXE2Q0lNUnpGY0xwdVFSVmxpUXZ3eHI4Wk5JeWdKMmdBR01IRnNoUXlmSWFrZ2Nlam1UN2RvenAvMjlFUEFYU29ueVJxdVY1V0NYeUsrSUgwZDF6K0hDRVN4RU8wTjRMbTNYa3ZFZlNvSWFMN040TE9IelRkQ0lKSDA1MmxpQ000SCtuTDBOY1p4NzNJTndETWVOd0VhQXhoSzRhNzdQZjd3ekdTQ0FlODVEVDRBajRmZ0d2WHJ1eWw1K2hoTG9aY2VEK3phN3lWRnd0V3ZWQVJXU1Jpc21RVVE1ZGV2bGlHcHRZeUs5RDBZV21DUE1Fb2dNZmN0V0NYQ3VGZURIdnlla1RFaEFzWndIS3VHdnA5dENRV0ZyM3NicVNKQ3BnaFkrS2wwM09tYzJKVUdYVk9tQ1lzTTZXZGt2ZFUxcE05NWZYYzdvbWk0LzZ3aHFGSFNCMlFsWnNHUEFNM0tmS0FHc0xjVVRPZEgrcGhXTGhVV1FvTHc3cnpRNFY5MXNaaXE3eUs0bDIxbXZVNjJueitvTmV6YkptSEdhKzJEamEyK3V1djdaRGxIYS85NFJLTUxyUGpCSFYyMlNoY2V0NlRMcVZGb1RVbEJ3R0NjcXBWRUhIQUF4ZGVmV3E5SksxLzZ2dmZkKzZKUldHSkVnd3FTMERSbFFyMjJ2d3BrTWJHSkZBaVVodEVZeFd1R1I4eXhTTGZSaC9CL0FOTHQxd2ZZS1A1TjVuNXB4LzI1L3pPazg2VFdMM1A3NGRYc2NiQ1A0TENXTzE4eGVkN1g2QWxBSy82ZkU0Yk5xN2lKS2ZKSzV6dXZrTE1KcjRtb280d000Mm95V25KT1lQcGFWYVNnRG9OU2NwaUJ5b1N6TWdpVkVVYzF5U25nUk1JSXJLUnQ4RnJ6emtvMmZWbFNEdVVZRmlDU2hPdjB3RGF4T3VjdVI2dkp2MEpYanBKaGhuZUlpT3ZpaHpJSWQ1WndqRS80OTVoL2VucjlrT0FNOUsxT01IbHBFdmlQUGErSTA0eWZCMXpOTnhHbXZYcGJqNHg0K2FrN1lqYjRFeVJrMHFjVmVmQ1RVVjM5WncyTlJmY2JidUIzUVBDWFFEY3dYbjl3Z1huZGR3cGUrR0ZOd1hoelJmY1VsTzh6enpqVFVUa005Nms5NHpFZXpRNk14OFVsMTZlbkFQR2txUzhUei90aFVqY2Q4YnJQZU9KaEgzWDB5YTRWTmt1aFhSZWdoTkdnbGdpT0J0anBOR05JRzF2YmVUUytQL1NOak1mRWxmU3I4NGpyZkhUNjBoelk3a21iUm4wdEgzY2FtNHJkNEQ3Q1Bjbzl6ejNDdmNkN2pYa3BHM1Z1bW5la3ZJcTFTVlR6OUNLYVZlR0tJaEVRb01hc3FzU2MzOGxDL3NHc3lraTREbHE5UkI3ejBHL3FUT0hhQXk1U1pOUnQvTTRPZWN2UldMT0IxWEpOWkRpZkVCd2Myb0pvV3ptaGExNmlNNHRsZDVtbDJ2WEltV01VRFRtVjJtbUYwcWxpZGFwc2UyYnByWk5iQ3FOV2RhRTlWZHViM3hUYWR6NTdoY3ZMalNOdm5NUDdoM2NYVldVNU5rL1NpUExkajNSdWQzNWRpSXVTMWZPeWJ3dWF5Ris0bWJ2RFNPYTFQZVRaNDcvY3NpMzRaYXhpVVYzOWdhREh1MWJ2KzVGUUk5ejNzTUFOV0NRSXlOQkJubi9HME9iTjg0RGhDZVNpbExkUFZqdXFkbWRUK3dhWFNyOThVeHprNlI2L1NiWEx0MzM4TThuVnRyUGZCUm9rK0R6RDBEK2JVL1VQQzA0QjUzUC9ac2tQdzIxdmNuZlF6NDdlbXg0M0RsMXdSTXdqMi9sblY5UThMNEc2OGVwcDZmMzFsc0ZVZzRTSHdWMTVpSGRkK1FlTXd5UXpheFowOWsyNW56dDR2V1FYaklIQ2RINW9QRHc4TEhSYkI3OG9raTJIamNEbmd1d3R2RXZmOGI2MFVQT2N5K2xud0p6VDh6WE9rZC9mVy9TdmZkWExsODV3QXVvdjFtdWl5dmozV3BtV0hQWG5ibHpNZTJHZXJZYitXRkdOcGVBc1RDUzUvS1BmMkJzTmZEZitzVEhYK1poemRnSEhzOEprZGFDMlA2akJ4LzZjWnVZYjQ4ME9ISml4MjBmb2ZRanQrMDRRVzdZKy9kZDNRK3MvOWhwbmovOXNmVVBkSGM5K2RlUm5DOFNQb28rL3ZOSEl4RmZqaHpjZm95UVk5dTNINlgwNkhha1VYQnp5dE4wTWViU1dhN0l0YnFadElnYWkvcHFNcnRhS3pGTGxHZW1WYkxzT290b1RVd2tUSkJzazRVZVdrVE1aM09sbWxhdFY3THN2U3cvRitCbldWaVBlZmN0ME1XYjZ1TkFDVHdiZ1ZpYnZ5V1kwcDBKMHRhNXJFTUlpdTBpT0JsWVBPYThkTkFZaE84RU5EQzB4czBzbW9FWEE1b1djQVpiNndEMVZ2STAxaHFzQW5naWFQSmxvUEFOUFZPSWRRUUNFV2NRVm5ST2RJcEViSmRreWZrY0xKMTBYbGkwYmhEVVVNQ1owa3hUSTZjMEU3UjRDT3kyeG1TYkRWakRGd01oOS96MzhvQXlDcUNFK3JneGJoejl5U0N3cDBxV2kyQ2dCdGtheG1YdWUyL1dsZHNpdUhxNkNuc1VSRE9aejVaeFNWYkxYN095QXZjWkJzUTFRNCtUZGM3ZEthUERURHAzYTNIQXNYRjJvZzE0b25FRWFYa2VZcHBERFoxc2VFRTNzRzNneDRkUXBPSWlhSHpIU0ZHajBselpLU1p4dm1GWTdCUVcrUVhFYy9ITGI3aHc1TVhHRGRldVluckkzcmVmb04rZ3QxMTlFMTNJTGVFbXVUVW82WG42SnN4cm0xVU1POTFucGx4SktybHRpYlVGRm8xR3hGeXBPTmVnY3cxcHJnRXpNRkZuaVpsYnFqQnUxOGNKR2EvYjQwOEdNN2xNRURCM3V3dFptRTlybUpuVkNzNy9zQkg4c29aZHdHK1cxRytxNDNjRHRBNjI0cGU4TVljQllMemZMWnM0TDJqcFVDaXRKZkw1MzRWWUs0U3RteE1NUmVGNE0wY2svVzMxK3VwNi9iL1NiVzJMMjlwY2YvY2graWpkelNXNUZOZUJITURRR2VYWGRQQXlTck9HSHM3TnE5Z3pXN2labVZwTW5xSkJYdkU2N1VKQUNNZ1ZyeGVPTzdzRndWc1IvSUlpdy9jRTRjRlVFY0JLcEl2RWdnT0tqSkE0S3lka3VCL3VKd0ZKOFZSNVFYYmFFTjZSd1VyUzl6VGhMMzg2YVhHemREMkdkS1hSMjNVMVl5VkdodnZheCtJbFZybkpHOFpNU0NXZGZWL0hZYzBRWVowWFNYQXB3MTJkM1hEOEttbU1qbXRJQzhqd0tsSlNaYk1lWjVlenl3Vmo2K0I3MU8rNW5qajJIbmtPNzBnWlkzZVd2YWdzZTJSWkNvdXlNSTFod1JlT2tOOVVwMXRydGRicDkwNjNybHdKKy9XRUx4R0IvU3RYdGs3VExvdk5XRmJyNmxmWE9COE1oMkgvbWxkWHQxcE4relBEODNqL1JMeUI3SlZtRWU2aFpjUFpzTFhBcEZtYTFjSzRGWFZUSnBiMDJPRTZXaGdzVUdDZzVUVTdQL2Vjd0s0ZVdoc2ZXYjdibWRoNTVNaE9lSFozNDVsTFNseTZKR1lNc2p5YzR2Y0lMWEhuZ2ZWaVNEOGlPLzkrOHVUSktIdGZqNTZNdHJUQWg1ME9RbUc2dTl2NVRLTUIzNFhmcVFGbjJCOXdPbGc2SFNaOHJCV1NSdEhUVFIzT3FjTXJkVWliVGgzbnNJWlh6UFJzcmpkM2xoYXV3Rlh4SkgvUkVTNy9tYlRUeWIrWWFKajMyODNiLzNMekRqL1R2UDJQTWk2K2cvVDc5RjZ1eDlVVnlhclgzTmZKeWxYSEYzbkh4MG1nNGRxNitIbEQva0Zpc21QTkhZVGNzV2J0VGpLdmx4dUl3YThJMmJuVzdZSjNRZnZmdFBhazQvZWtjeTRvcFR2WHBoSUhVcXlIRUppODNlZjFOWWZYM05HVXo2T294NXRSajNPb2FVdys3L2dZQlN5dFpBYk52SzVCRHpZNFpvUW03WmV5STVONDZ3WnMrMlY3RXExU1l6THBHcCtmWFZQUnplL3d4T1NnQWpRZm9mNms1djRQZTRDclZBQjRuR05nWkdCZ0FPTG9aTEY1OGZ3Mlh4bTRXUmhBNEJwamxCeU0vdi9uZnprTFAzTXprTXZCd0FRU0JRQUdHQW5WQUFBQWVKeGpZR1JnWUc3NDM4QVF3OEw0LzgvL2p5ejhERUFSRktBS0FLQ2NCb2w0bkdOaFlHQmdmc25Bd01LQWpQLy94OHRueEtZR0QyYjgvNGRvdFVBTUFJOXJDWFFBQUFBQUFIWUJPZ0hhQWlBQ2pBTkNBNElFRWdTT0JTQUZnQVhZQmxJSGFBZnNDSklJdkFqb0NSUUpQZ2xxQ2JnS0JndG1DN2dNT0F5cURUQU5mQTNLRGZnT1hnNjREdUFQTGcrRWVKeGpZR1JnWUZCbHVNL0F3d0FDVEVETUJZUU1EUC9CZkFZQUl3d0NKd0I0bkdXUFRVN0RNQkNGWC9vSHBCS3FxR0NINUFWaUFTajlFYXR1V0ZScTkxMTAzNlpPbXlxSkk4ZXQxQU53SG83QUNUZ0MzSUE3OEVnbm16YVd4OSs4ZVdOUEFOemdCeDZPM3kzM2tUMWNNanR5RFJlNEY2NVRmeEJ1a0YrRW0yampWYmhGL1UzWXh6T213bTEwWVhtRDE3aGk5b1IzWVE4ZGZBalhjSTFQNFRyMUwrRUcrVnU0aVR2OENyZlE4ZXJDUHVaZVY3aU5SeS8yeDFZdm5GNnA1VUhGb2NraWt6bS9ncGxlNzVLRnJkTHFuR3RieENaVGc2QmZTVk9kYVZ2ZFUrelhRK2NpRlZtVHFnbXJPa21NeXEzWjZ0QUZHK2Z5VWE4WGlSNkVKdVZZWS82MnhnS09jUVdGSlE2TU1VSVlaSWpLNk9nN1ZXYjByN0ZEd2w1N1ZqM041M1JiRk5UL2M0VUJBdlRQWEZPNnN0SjVPaytCUFY4YlVuVjBLMjdMbnBRMGtWN05TUkt5UWw3V3RsUkM2Z0UyWlZlT0VYcGMwWWsvS0dkSS93QUpXbTdJQUFBQWVKeHRUOGwyZ3pBTVpDaGdRa24zZlV1MzlKYVB5U2VZNElCVFlyZFF0VEZmWDVIQW9lOVZCMWtqajBZYXovZDJrWGoveHhRKzloQWdSQVNCR0NNazJFZUtNUTV3aUNNYzR3U25PTU01TG5DSksxempCcmU0d3owZU1NRWpudkNNRjd4aWlqY1BtNkJXTWsrWDBwU2tjMjJLak9LbXRMU1FwZ2pXVkpIWWFGTXhpQnBMRFZsL1BvOStsT1ptdkZSbW8vbEhxSm83YXhubWtyUDRZSkdLRE0rVkpNMHNYRkVtYlp6THBtVHVMT3JFUDNYaUxLMTQrTXRTMHBJZFN0YnJ5M1JML3dOWUxyZW02RWg5bVdiMlhiWGRHaVpHem5hY0tOTWRGTjNJb2lUUjhEMUcxU0dmNk5SMnUxT3gwN3ZyUm80OVM5TktJL28zY1hxd1B4NE1sdlpiMVdudmF3czg3eGZpRkhlS0FBQT0nKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCdpY29uZm9udC50dGY/dD0xNTA3NTM5MjMwNjY3JykgZm9ybWF0KCd0cnVldHlwZScpLCAvKiBjaHJvbWUsIGZpcmVmb3gsIG9wZXJhLCBTYWZhcmksIEFuZHJvaWQsIGlPUyA0LjIrKi9cbiAgdXJsKCdpY29uZm9udC5zdmc/dD0xNTA3NTM5MjMwNjY3I2ljb25mb250JykgZm9ybWF0KCdzdmcnKTsgLyogaU9TIDQuMS0gKi9cbn1cblxuLmljb25mb250IHtcbiAgZm9udC1mYW1pbHk6XCJpY29uZm9udFwiICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZToxNnB4O1xuICBmb250LXN0eWxlOm5vcm1hbDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5pY29uLXJlYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGU3YjlcIjsgfVxuXG4uaWNvbi1mYW5odWlkaW5nYnU6YmVmb3JlIHsgY29udGVudDogXCJcXGU2NGRcIjsgfVxuXG4uaWNvbi1zaG91Y2FuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgxY1wiOyB9XG5cbi5pY29uLW11bHU6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MWRcIjsgfVxuXG4uaWNvbi14aW5sYW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODFmXCI7IH1cblxuLmljb24tc291c3VvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODIwXCI7IH1cblxuLmljb24tUVE6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MjFcIjsgfVxuXG4uaWNvbi13ZWl4aW46YmVmb3JlIHsgY29udGVudDogXCJcXGU4MjJcIjsgfVxuXG4uaWNvbi1mZW54aWFuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgyM1wiOyB9XG5cbi5pY29uLWVyd2VpbWE6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MjVcIjsgfVxuXG4uaWNvbi1kYWltYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgzMFwiOyB9XG5cbi5pY29uLXBpbmdsdW46YmVmb3JlIHsgY29udGVudDogXCJcXGU4MjdcIjsgfVxuXG4uaWNvbi14aWh1YW4tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODI4XCI7IH1cblxuLmljb24tanViYW86YmVmb3JlIHsgY29udGVudDogXCJcXGU4MjlcIjsgfVxuXG4uaWNvbi1kYXNoYW5nLTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgyYVwiOyB9XG5cbi5pY29uLXNob3VxaTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgyYlwiOyB9XG5cbi5pY29uLXlvdWppYW50b3U6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MmNcIjsgfVxuXG4uaWNvbi16dW9qaWFudG91OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODJkXCI7IH1cblxuLmljb24teGlhamlhbnRvdTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgyZVwiOyB9XG5cbi5pY29uLXNoYW5namlhbnRvdTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgyZlwiOyB9XG5cbi5pY29uLXNoYW5naHVhZG9uZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTgzMVwiOyB9XG5cbi5pY29uLXhpYWh1YWRvbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MzJcIjsgfVxuXG4uaWNvbi1ib2tlemh1YW5qaWE6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MzNcIjsgfVxuXG4uaWNvbi15b25naHU6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MzRcIjsgfVxuXG4uaWNvbi1iaWFuamk6YmVmb3JlIHsgY29udGVudDogXCJcXGU4MzhcIjsgfVxuXG4uaWNvbi1zaGFuY2h1OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODM5XCI7IH1cblxuLmljb24tc3Bpbm5lcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTYwM1wiOyB9XG5cbi5pY29uLXdlaXllOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODY2XCI7IH1cblxuLmljb24tc2hvdXllOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODY3XCI7IH1cblxuLmljb24teWl4aWh1YW46YmVmb3JlIHsgY29udGVudDogXCJcXGU4NjlcIjsgfVxuXG4uaWNvbi15aWRpYW56YW46YmVmb3JlIHsgY29udGVudDogXCJcXGU4NmRcIjsgfVxuXG4uaWNvbi1kaWFuemFuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlODZlXCI7IH1cblxuLmljb24teWlzaG91Y2FuZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTg2ZlwiOyB9XG5cbi5pY29uLWZlbnhpYW5naG92ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGU4NzBcIjsgfVxuXG4uaWNvbi1waW5nbHVuaG92ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGU4NzFcIjsgfVxuXG4iLCJib2R5XG5oMVxuaDJcbmgzXG5oNFxuaDVcbmg2XG51bFxubGlcbm9sXG5kbFxuZHRcbmRkXG5wXG5zcGFuXG5kaXZcbm9iamVjdFxuaWZyYW1lXG5wcmVcbmFcbmFiYnJcbmNpdGVcbmlucHV0XG5idXR0b25cbnNlbGVjdFxub3B0aW9uXG4gIG1hcmdpbiAwXG4gIHBhZGRpbmcgMFxuICBmb250LXdlaWdodCBub3JtYWxcbiAgYm94LXNpemluZyBib3JkZXItYm94XG4gIC1tb3otYm94LXNpemluZyBib3JkZXItYm94XG4gIC13ZWJraXQtYm94LXNpemluZyBib3JkZXItYm94XG51bFxubGlcbm9sXG5kbFxuZGRcbmR0XG5mb3JtXG4gIGxpc3Qtc3R5bGUgbm9uZVxuICBtYXJnaW4gMFxuICBwYWRkaW5nIDBcbmgxXG5oMlxuaDNcbmg0XG5oNVxuaDZcbiAgZm9udC1mYW1pbHkgJ1BpbmdGYW5nIFNDJywnTWljcm9zb2Z0IFlhSGVpJywnU2ltSGVpJywnQXJpYWwnLCdTaW1TdW4nXG5odG1sXG4gIGhlaWdodCAxMDAlXG5ib2R5XG4gIGJhY2tncm91bmQtY29sb3IgI2Y0ZjRmNFxuICBsaW5lLWhlaWdodCAyNHB4XG4gIGZvbnQtc2l6ZSAxNnB4XG4gIGZvbnQtZmFtaWx5ICdQaW5nRmFuZyBTQycsJ01pY3Jvc29mdCBZYUhlaScsJ1NpbUhlaScsJ0FyaWFsJywnU2ltU3VuJ1xuaW1nXG4gIGJvcmRlciAwXG4gIG91dGxpbmUgbm9uZVxuZW0sXG5pXG4gIGZvbnQtc3R5bGUgbm9ybWFsXG5idXR0b25cbmlucHV0XG50ZXh0YXJlYVxuICBvdXRsaW5lIG5vbmVcbiAgYm9yZGVyIDBcbnRleHRhcmVhXG4gIHJlc2l6ZSBub25lXG5hXG4gIG91dGxpbmUgbm9uZVxuICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICBjb2xvciAjNEY0RjRGXG5hOmxpbmtcbmE6dmlzaXRlZFxuICBjb2xvciAjNEY0RjRGXG5hOmhvdmVyXG5hOmFjdGl2ZVxuYTpmb2N1c1xuICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICBjb2xvciAjMzMzXG4uY2xlYXJmaXg6YWZ0ZXJcbiAgY29udGVudCAnLidcbiAgaGVpZ2h0IDBcbiAgdmlzaWJpbGl0eSBoaWRkZW5cbiAgZGlzcGxheSBibG9ja1xuICBjbGVhciBib3RoXG4uY29udGFpbmVyXG4gIHdpZHRoIDExNjBweFxuICBtYXJnaW4gMjBweCBhdXRvIDBcbi5idG5cbiAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgaGVpZ2h0IDMycHhcbiAgbGluZS1oZWlnaHQgMzJweFxuICB0ZXh0LWFsaWduIGNlbnRlclxuICBwYWRkaW5nIDAgMjBweFxuICBib3JkZXIgMFxuLmJ0bjpmb2N1c1xuLmJ0bjphY3RpdmVcbiAgb3V0bGluZSBub25lXG4gIGJvcmRlciAwXG4gIGJveC1zaGFkb3cgMCAwIDAgcmdiYSgwLDAsMCwwKVxuLmJ0bi1zbWFsbFxuICBmb250LXNpemUgMTRweFxuICAvLyBib3JkZXItcmFkaXVzIDE3cHhcbiAgbWluLXdpZHRoIDgwcHhcbi5idG4tbGFyZ2VcbiAgZm9udC1zaXplIDE2cHhcbiAgbWluLXdpZHRoIDEwMHB4XG4uYnRuLXJlZFxuICBjb2xvciAjZmZmXG4gIGJhY2tncm91bmQgI0U0MUQxRFxuLmJ0bi1ncmF5XG4gIGNvbG9yICM2NjZcbiAgYmFja2dyb3VuZCAjRTVFNUU1XG4uYnRuLWdyYXktZnJlZFxuLmJ0bi1ncmF5LWZyZWQ6bGlua1xuLmJ0bi1ncmF5LWZyZWQ6dmlzaXRlZFxuLmJ0bi1ncmF5LWZyZWQ6Zm9jdXNcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogI2RlNjg2ZDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGU2ODZkO1xuICBsaW5lLWhlaWdodDogMzBweDtcbi5idG4tZ3JheS1mcmVkOmhvdmVyXG4uYnRuLWdyYXktZnJlZDphY3RpdmVcbiAgY29sb3IgICNmZmZcbiAgLyp0ZXh0LXNoYWRvdyAwIDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsMC43KSovXG4gIGJhY2tncm91bmQgI2RlNjg2ZFxuLmJ0bi1lbXB0eVxuICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICBoZWlnaHQgMjRweFxuICBsaW5lLWhlaWdodCAyMnB4XG4gIHRleHQtYWxpZ24gY2VudGVyXG4gIHBhZGRpbmcgMCAyMHB4XG4gIGJvcmRlciAxcHggc29saWQgI0U1RTVFNVxuICBib3JkZXItcmFkaXVzIDEycHhcbiAgZm9udC1zaXplIDEycHhcbiAgY29sb3IgI0U0MUQxRFxuICBiYWNrZ3JvdW5kIHJnYmEoMCwwLDAsMClcbi5idG4tbm9ib3JkZXJcbiAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgaGVpZ2h0IDI0cHhcbiAgbGluZS1oZWlnaHQgIDI0cHhcbiAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgZm9udC1zaXplIDE0cHhcbiAgY29sb3IgIzg4OFxuICBwYWRkaW5nIDAgMFxuICBib3JkZXIgMFxuICBiYWNrZ3JvdW5kIHJnYmEoMCwwLDAsMClcbi5idG4tbm9ib3JkZXI6aG92ZXJcbi5idG4tbm9ib3JkZXI6YWN0aXZlXG4gIGJhY2tncm91bmQgcmdiYSgwLDAsMCwwKVxuLmJ0bi1yZWRib3JkZXJcbiAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgaGVpZ2h0IDMycHhcbiAgYm9yZGVyLXJhZGl1cyA0cHhcbiAgbWluLXdpZHRoIDkwcHhcbiAgbGluZS1oZWlnaHQgMzBweFxuICB0ZXh0LWFsaWduIGNlbnRlclxuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjRTQxRDFEO1xuICBwYWRkaW5nIDAgMjBweFxuICBib3JkZXI6IDFweCBzb2xpZCAjRTQxRDFEO1xuICBiYWNrZ3JvdW5kICNmZmZcbi5idG4tcmVkYm9yZGVyOmxpbmtcbi5idG4tcmVkYm9yZGVyOnZpc2l0ZWRcbiAgY29sb3IgI0U0MUQxRFxuLmJ0bi1yZWRib3JkZXI6aG92ZXJcbi5idG4tcmVkYm9yZGVyOmFjdGl2ZVxuLmJ0bi1yZWRib3JkZXI6Zm9jdXNcbiAgY29sb3IgI2ZmZlxuICBiYWNrZ3JvdW5kICNFNDFEMURcbi5idG4tcmVkYm9yZGVyLXNtYWxsXG4gIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gIGhlaWdodCAyNHB4XG4gIGJvcmRlci1yYWRpdXMgNHB4XG4gIG1pbi13aWR0aCA1MnB4XG4gIGxpbmUtaGVpZ2h0IDIycHhcbiAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgZm9udC1zaXplIDEycHhcbiAgY29sb3IgI0U0MUQxRFxuICBwYWRkaW5nIDAgMjBweFxuICBib3JkZXIgMXB4IHNvbGlkICNkZTY4NmRcbiAgYmFja2dyb3VuZCAjZjNmN2Y5XG4uYnRuLXJlZGJvcmRlci1zbWFsbDpsaW5rXG4uYnRuLXJlZGJvcmRlci1zbWFsbDp2aXNpdGVkXG4gIGNvbG9yICNFNDFEMURcbi5idG4tcmVkYm9yZGVyLXNtYWxsOmhvdmVyXG4uYnRuLXJlZGJvcmRlci1zbWFsbDphY3RpdmVcbi5idG4tcmVkYm9yZGVyLXNtYWxsOmZvY3VzXG4gIGNvbG9yICNmZmZcbiAgYmFja2dyb3VuZCAjRTQxRDFEXG4uZHJvcGRvd24tbWVudVxuICBib3gtc2hhZG93IDAgMCAwIHJnYmEoMCwwLDAsMClcbiAgYm9yZGVyIDFweCAjZTVlNWU1IHNvbGlkIiwiaGVhZGVyXG4gIC50b3Bib3hcbiAgICBoZWlnaHQgNjBweFxuICAgIG92ZXJmbG93IGhpZGRlblxuICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgei1pbmRleCAxXG4gICAgbWFyZ2luLWJvdHRvbSAyMnB4XG4gICAgY2xlYXIgYm90aFxuICAgIHdpZHRoIDEwMCVcbiAgICAudGV4dFxuICAgICAgaGVpZ2h0IDBcbiAgICAgIG92ZXJmbG93IHZpc2libGVcbiAgICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgICB6LWluZGV4IDNcbiAgICAgIHdpZHRoIDEwMjBweFxuICAgICAgbWFyZ2luIDAgYXV0b1xuICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICAgIGFcbiAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICBsaW5lLWhlaWdodCA2MHB4XG4gICAgICAgIHRleHQtYWxpZ24gbGVmdFxuICAgICAgICBjb2xvciAjZmZmXG4gICAgICBhOmxpbmtcbiAgICAgIGE6aG92ZXJcbiAgICAgIGE6dmlzaXRlZFxuICAgICAgYTphY3RpdmVcbiAgICAgICAgY29sb3IgI2ZmZlxuICAgIGltZy5jb25cbiAgICAgIHdpZHRoIDEwMCVcbiAgICAgIGhlaWdodCA2MHB4XG4gICAgLnBpY1xuICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgIHotaW5kZXggMlxuICAgICAgXG4gICAgICAgIFxuICAgICAgICAgIFxuICAgICAgICBcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICIsIm1haW5cbiAgZmxvYXQgbGVmdFxuICB3aWR0aCA4MTBweFxuICBhcnRpY2xlXG4gICAgYmFja2dyb3VuZC1jb2xvciAjZmZmXG4gICAgcGFkZGluZyAyMHB4IDBcbiAgICBib3gtc2hhZG93IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4wNSlcbiAgICAuY3Nkbl90b3BcbiAgICAgIHBhZGRpbmcgMCAyOXB4XG4gICAgICBjb2xvciAjMmMzMDMzXG4gICAgICBmb250LXNpemUgMjRweFxuICAgICAgZm9udC13ZWlnaHQgYm9sZFxuICAgICAgbGluZS1oZWlnaHQgMzhweFxuICAgIC5hcnRpY2xlX2JhclxuICAgICAgcGFkZGluZzogMCAyOXB4XG4gICAgICBjb2xvciAjODg4XG4gICAgICBib3JkZXItYm90dG9tIDFweCBzb2xpZCAjRTVFNUU1XG4gICAgICBmb250LXNpemUgMTRweFxuICAgICAgbGluZS1oZWlnaHQgMzhweFxuICAgICAgcGFkZGluZy1ib3R0b20gOHB4XG4gICAgICBtYXJnaW4tdG9wIDVweFxuICAgICAgLmFydGljYWxfdGFnXG4gICAgICAgIGZsb2F0IGxlZnRcbiAgICAgICAgLmJ0bi1lbXB0eVxuICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgbWFyZ2luIDAgMTBweCAwIDBcbiAgICAgICAgLm9yaWdpbmFsXG4gICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjZTRlYmY0XG4gICAgICAgICAgcGFkZGluZyAycHggNnB4XG4gICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICBjb2xvciAjNzg5MDljXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0IDIwcHhcbiAgICAgICAgLnRpbWVcbiAgICAgICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgICAgIGNvbG9yICNiYmJcbiAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgdWwucmlnaHRfYmFyXG4gICAgICAgIGZsb2F0IHJpZ2h0XG4gICAgICAgIG1hcmdpbi10b3AgNXB4XG4gICAgICAgIGxpXG4gICAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICAgIG1hcmdpbi1sZWZ0IDMwcHhcbiAgICAgICAgICBsaW5lLWhlaWdodCAyOHB4XG4gICAgICAgICAgLmljb25mb250XG4gICAgICAgICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ24gbWlkZGxlXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQgOHB4XG4gICAgICAgICAgLmljb24teGlodWFuLVxuICAgICAgICAgICAgbWFyZ2luLXRvcCAxcHhcbiAgICAgICAgICAudHh0XG4gICAgICAgICAgICBjb2xvciAjNzg4MDg3XG4gICAgICAgICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ24gbWlkZGxlXG4gICAgICAgICAgLmxpa2VkXG4gICAgICAgICAgICAuaWNvbi14aWh1YW4tXG4gICAgICAgICAgICAgIGNvbG9yICNlNDNjMWRcbiAgICAgICAgICAuYnV0LWNvbW1lbnQtdG9waWNvbjpob3ZlcixcbiAgICAgICAgICAuYnRuLWxpa2U6aG92ZXJcbiAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAgICAgICAgICAgc3BhbiBcbiAgICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAgICAgICBsaTpmaXJzdC1jaGlsZFxuICAgICAgICAgIGJ1dHRvblxuICAgICAgICAgICAgY3Vyc29yIGF1dG9cbiAgICAgICAgICAgIHNwYW4saVxuICAgICAgICAgICAgICBjb2xvciAjYmJiXG4gICAgICAgIC5lZGl0LC5kZWxcbiAgICAgICAgICBkaXNwbGF5IG5vbmVcbiAgICAgICAgICBhXG4gICAgICAgICAgICBjb2xvciAjNDA5M2M2XG4gICAgICAgICAgICAmOmhvdmVyXG4gICAgICAgICAgICAgIGN1cnNvciBwb2ludGVyXG4gICAgICAgICAgICAgIGNvbG9yICM0MDkzYzZcbiAgICAgICAgICAgICAgLnR4dFxuICAgICAgICAgICAgICAgIGNvbG9yICM0MDkzYzZcbiAgICAgICAgICAgIC50eHQsaVxuICAgICAgICAgICAgICBjb2xvciAjNDA5M2M2XG4gICAgICAgICAgICBcbiAgICAuYXJ0aWNsZV9jb250ZW50XG4gICAgICBwXG4gICAgICAgIHdvcmQtYnJlYWsgYnJlYWstYWxsXG4gICAgICAgIHdvcmQtd3JhcCBicmVhay13b3JkXG4gICAgICAgIHdvcmQtYnJlYWsgbm9ybWFsXG4gICAgICBpbWdcbiAgICAgICAgbWF4LXdpZHRoIDEwMCVcbiAgICAgIGEsKiBhLCogKiBhXG4gICAgICAgIGNvbG9yICM0ZmExZGJcbiAgICAgIGgxLGgyLGgzLGg0LGg1LGg2XG4gICAgICAgIGZvbnQtd2VpZ2h0IDEwMFxuICAgICAgICBtYXJnaW4gMC44ZW0gMFxuICAgICAgICBsaW5lLWhlaWdodCAxLjFcbiAgICAgICAgY29sb3IgaW5oZXJpdFxuICAgICAgaDFcbiAgICAgICAgZm9udC1zaXplIDIuNmVtXG4gICAgICBoMlxuICAgICAgICBmb250LXNpemUgMi4xNWVtXG4gICAgICBoMyBcbiAgICAgICAgZm9udC1zaXplIDEuN2VtXG4gICAgICBoNCBcbiAgICAgICAgZm9udC1zaXplIDEuMjVlbVxuICAgICAgaDUgXG4gICAgICAgIGZvbnQtc2l6ZSAxZW1cbiAgICAgIGg2IFxuICAgICAgICBmb250LXNpemUgLjhlbVxuICAgICAgdWxcbiAgICAgICAgbGlzdC1zdHlsZSBkaXNjXG4gICAgICB1bCBcbiAgICAgICAgbGlcbiAgICAgICAgICBkaXNwbGF5IGxpc3QtaXRlbVxuICAgICAgICAgIGxpc3Qtc3R5bGUgZGlzY1xuICAgICAgICAgIG1hcmdpbi1sZWZ0IDQwcHhcbiAgICAgIG9sXG4gICAgICAgIGxpc3Qtc3R5bGUgZGVjaW1hbFxuICAgICAgICBsaVxuICAgICAgICAgIGRpc3BsYXkgbGlzdC1pdGVtXG4gICAgICAgICAgbGlzdC1zdHlsZSBkZWNpbWFsXG4gICAgICAgICAgbWFyZ2luLWxlZnQgNDBweFxuICAgICAgZW1cbiAgICAgICAgZm9udC1zdHlsZSBpdGFsaWNcbiAgLnJlYWRhbGxfYm94XG4gICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICB6LWluZGV4IDk5OTlcbiAgICBwYWRkaW5nIDAgMCAyNXB4XG4gICAgbWFyZ2luLXRvcCAtMjUwcHhcbiAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgIC5yZWFkX21vcmVfbWFza1xuICAgICAgaGVpZ2h0IDIwMHB4XG4gICAgICBiYWNrZ3JvdW5kIC1tb3otbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpXG4gICAgICBiYWNrZ3JvdW5kIC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIHRvcCwgMCBib3R0b20sIGZyb20ocmdiYSgyNTUsIDI1NSwgMjU1LCAwKSksIHRvKHJnYmEoMjU1LCAyNTUsIDI1NSwgMSkpKVxuICAgICAgYmFja2dyb3VuZCAtby1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSlcbiAgICAgIFxuICAucmVhZGFsbF9ib3hfbm9iZ1xuICAgIGJhY2tncm91bmQgcmdiYSgwLDAsMCwwKVxuICAgIGJhY2tncm91bmQgLW1vei1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDAsIDAsIDAsIC4xKSwgcmdiYSgwLCAwLCAwLCAwKSlcbiAgICBiYWNrZ3JvdW5kIC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIHRvcCwgMCBjZW50ZXIsIGZyb20ocmdiYSgwLCAwLCAwLCAuMSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSlcbiAgICBiYWNrZ3JvdW5kIC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgLjEpLCByZ2JhKDAsIDAsIDAsIDApKVxuICBcbiAgLmFydGljbGVfY29weXJpZ2h0XG4gICAgZm9udC1zaXplIDE0cHhcbiAgICBjb2xvciAjNzg4MDg3XG4gICAgY2xlYXIgYm90aFxuICAgIG92ZXJmbG93IGhpZGRlblxuICAgIHBhZGRpbmcgMTBweCAyMHB4IDMwcHggMzBweFxuICAgIGJhY2tncm91bmQtY29sb3IgI2ZmZlxuICAgIGJveC1zaGFkb3cgMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjA1KVxuICAgIG1hcmdpbi10b3AgLTEwcHhcbiAgICBzcGFuLnJfaWNvXG4gICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgZmxvYXQgcmlnaHRcbiAgICAgIGN1cnNvciBwb2ludGVyXG4gICAgICAudHh0XG4gICAgICAgIC8vY29sb3IgI2U0M2MxZFxuICAgICAgICBjb2xvciAjNzg5MDljXG4gICAgc3Bhbi5yX2ljbzpob3ZlclxuICAgICAgaSwudHh0XG4gICAgICAgIGNvbG9yICNjYTBjMTZcbiAgICAgICAgY3Vyc29yIHBvaW50ZXJcbiAgLnJld2FyZF9ib3hcbiAgICBtYXJnaW4tdG9wIDMwcHhcbiAgICBtYXJnaW4tYm90dG9tIDMwcHhcbiAgICAudGl0XG4gICAgICBib3JkZXItdG9wIDJweCBzb2xpZCAjRTVFNUU1XG4gICAgICBwYWRkaW5nLWJvdHRvbSAyMHB4XG4gICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgLmJ0bl9yZXdhcmRcbiAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgbWFyZ2luLXRvcCAtMzBweFxuICAgICAgICB3aWR0aCA2MHB4XG4gICAgICAgIGhlaWdodCA2MHB4XG4gICAgICAgIGJvcmRlci1yYWRpdXMgMzBweFxuICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNGRkM5MzBcbiAgICAgICAgYmFja2dyb3VuZCAjZmZmXG4gICAgICAgIHZlcnRpY2FsLWFsaWduIHRvcFxuICAgICAgICAuaWNvbi1kYXNoYW5nLVxuICAgICAgICAgIGZvbnQtc2l6ZSAzcmVtXG4gICAgICAgICAgY29sb3IgI2ZmYzkzMFxuICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMXB4IHJnYmEoMjU1LDIwMSw0NiwuNSk7XG4gICAgICAuYnRuX3Jld2FyZDpob3ZlclxuICAgICAgLmJ0bl9yZXdhcmQ6dmlzaXRlZFxuICAgICAgICBjb2xvciAjZmZmXG4gICAgICAgIGJhY2tncm91bmQgI2ZmYzkzMFxuICAgICAgICAuaWNvbi1kYXNoYW5nLVxuICAgICAgICAgIGNvbG9yICNmZmZcbiAgICBkbFxuICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICAgIGR0XG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgIG1hcmdpbiA4cHggNXB4IDBcbiAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gICAgICAgIGNvbG9yICM4ODhcbiAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgYTpsaW5rXG4gICAgICAgIGE6aG92ZXJcbiAgICAgICAgYTphY3RpdmVcbiAgICAgICAgYTp2aXNpdGVkXG4gICAgICAgICAgY29sb3IgIzg4OFxuICAgICAgZGRcbiAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gICAgICAgIHdpZHRoIDMwcHhcbiAgICAgICAgaGVpZ2h0IDMwcHhcbiAgICAgICAgYm9yZGVyLXJhZGl1cyAxNXB4XG4gICAgICAgIG1hcmdpbiAwIDJweFxuICAgICAgICBpbWdcbiAgICAgICAgICB3aWR0aCAzMHB4XG4gICAgICAgICAgaGVpZ2h0IDMwcHhcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDE1cHhcbiAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNmMGYwZjBcbiAgLmFydGljbGVfdGFnc1xuICAgIGZsb2F0IGxlZnRcbiAgICBmbG9hdCBsZWZ0XG4gICAgbWFyZ2luLWxlZnQgMjZweFxuICAgIC8vIHBhZGRpbmctbGVmdCAyMHB4XG4gICAgLy8gcGFkZGluZy1yaWdodCAyMHB4XG4gICAgYmFja2dyb3VuZC1jb2xvciAjZmZmXG4gICAgZm9udC1zaXplIDE0cHhcbiAgICAvLyBtYXJnaW4tYm90dG9tIDIwcHhcbiAgICAvLyBwYWRkaW5nLWJvdHRvbSAyMHB4XG4gICAgLy8gYm9yZGVyLWJvdHRvbSAxcHggc29saWQgI0U0RUJGNFxuICAgIC8vIGJvcmRlci1sZWZ0IDFweCBzb2xpZCAjRTRFQkY0XG4gICAgLy8gYm9yZGVyLXJpZ2h0IDFweCBzb2xpZCAjRTRFQkY0XG4gICAgLy8gbWFyZ2luLXRvcCAtMnB4XG4gICAgbGlcbiAgICAgIGZsb2F0IGxlZnRcbiAgICAgIGFcbiAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgY29sb3IgIzQwOTNjNlxuICAgICAgYTpob3ZlclxuICAgICAgICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICAgICAgICBjb2xvciAjQ0EwQzE2XG4gICAgICBzcGFuXG4gICAgICAgIGNvbG9yICNFNUU1RTVcbiAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgbWFyZ2luIDAgMTBweCAwIDVweFxuICAgIGxpLnRpdFxuICAgICAgY29sb3IgI2JiYlxuICAuYXJ0aWNsZV9jb2xsZWN0XG4gICAgZm9udC1zaXplIDE0cHhcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICBtYXJnaW4tdG9wIC0yMnB4XG4gICAgcGFkZGluZy1sZWZ0IDMwcHhcbiAgICBwYWRkaW5nLWJvdHRvbSAyMHB4XG4gICAgYm94LXNoYWRvdyAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuMDUpXG4gICAgbGlcbiAgICAgIGZsb2F0IGxlZnRcbiAgICAgIG1hcmdpbi1yaWdodCAyNXB4XG4gICAgICBhXG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgIGNvbG9yICM0ZjRmNGZcbiAgICAgIGE6bGlua1xuICAgICAgYTpob3ZlclxuICAgICAgYTphY3RpdmVcbiAgICAgIGE6dmlzaXRlZFxuICAgICAgICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICAgICAgICBjb2xvciAjNDA5M2M2XG4gICAgbGkudGl0XG4gICAgICBjb2xvciAjODg4XG4gICAgICBtYXJnaW4tcmlnaHQgMFxuICAuY29tbWVudF9ib3hcbiAgICBoNlxuICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgIGNvbG9yICMzMzNcbiAgICAgIG1hcmdpbi1ib3R0b20gMTBweFxuICAgICAgc3BhblxuICAgICAgICBmb250LXNpemUgMThweFxuICAgICAgICBjb2xvciAjY2EwYzE2XG4gICAgICAgIGZvbnQtd2VpZ2h0IGJvbGRcbiAgICBkbFxuICAgICAgbWFyZ2luLWJvdHRvbSAxMHB4XG4gICAgICBkdFxuICAgICAgICBmbG9hdCBsZWZ0XG4gICAgICAgIHdpZHRoIDQwcHhcbiAgICAgICAgaGVpZ2h0IDQwcHhcbiAgICAgICAgbWFyZ2luLXJpZ2h0IDEwcHhcbiAgICAgICAgaW1nXG4gICAgICAgICAgd2lkdGggNDBweFxuICAgICAgICAgIGhlaWdodCA0MHB4XG4gICAgICAgICAgYm9yZGVyLXJhZGl1cyAyMHB4XG4gICAgICBkZFxuICAgICAgICBmbG9hdCBsZWZ0XG4gICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgIGNvbG9yICM0ZjRmNGZcbiAgICAgICAgZm9udC13ZWlnaHQgYm9sZFxuICAgICAgICBtYXJnaW4tdG9wIDEzcHhcbiAgICAgICAgYVxuICAgICAgICAgIGNvbG9yICM0MzQzNDNcbiAgICAgICAgICBmb250LXdlaWdodCBib2xkXG4gICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgIGRkLnR4dF90aXBcbiAgICAgICAgZmxvYXQgcmlnaHRcbiAgICAgICAgLnRpcFxuICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICBjb2xvciAjY2EwYzE2XG4gICAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gICAgLmNvbW1lbnRfYXJlYVxuICAgICAgaGVpZ2h0IDYwcHhcbiAgICAgIGZvcm1cbiAgICAgICAgd2lkdGggOTQlXG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgIHZlcnRpY2FsLWFsaWduIHRvcFxuICAgICAgLnVzZXJpbWdcbiAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgIHdpZHRoIDMwcHhcbiAgICAgICAgaGVpZ2h0IDMwcHhcbiAgICAgICAgbWFyZ2luLXJpZ2h0IDZweFxuICAgICAgICBtYXJnaW4tdG9wIDVweFxuICAgICAgICBhXG4gICAgICAgICAgaW1nXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzIDUwJVxuICAgICAgICAgICAgd2lkdGggMTAwJVxuICAgICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjZTdlN2U3XG4gICAgICAuY29tbWVudF9jb250ZW50XG4gICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjZDBkMGQwXG4gICAgICAgIGhlaWdodCA0MHB4XG4gICAgICAgIG1hcmdpbi1ib3R0b20gMTBweFxuICAgICAgICBwYWRkaW5nIDZweCAxMHB4XG4gICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgIGJvcmRlci1yYWRpdXMgNHB4XG4gICAgICAgIC8vIHRyYW5zaXRpb24gaGVpZ2h0IC41c1xuICAgICAgICAvLyAmOmZvY3VzXG4gICAgICAgIC8vICAgaGVpZ2h0IDg0cHhcbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlclxuICAgICAgICAgIGNvbG9yICNkOGQ4ZDhcbiAgICAgICAgJjppbnB1dC1wbGFjZWhvbGRlclxuICAgICAgICAgIGNvbG9yICNkOGQ4ZDhcbiAgICAgICAgJjotbW96LXBsYWNlaG9sZGVyXG4gICAgICAgICAgY29sb3IgI2Q4ZDhkOFxuICAgICAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlclxuICAgICAgICAgIGNvbG9yICNkOGQ4ZDhcbiAgICAgIC5ib3RfYmFyXG4gICAgICAgIG9wYWNpdHkgMFxuICAgICAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgICAgICB6LWluZGV4IDFcbiAgICAgICAgLmFkZF9jb2RlXG4gICAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgd2lkdGggMzBweFxuICAgICAgICAgIGhlaWdodCAzMHB4XG4gICAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0IDEwcHhcbiAgICAgICAgICBtYXJnaW4tbGVmdCAtMXB4XG4gICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjZDBkMGQwXG4gICAgICAgICAgYm9yZGVyLXJhZGl1cyAzcHhcbiAgICAgICAgICAuaWNvbi1kYWltYVxuICAgICAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduIHRvcFxuICAgICAgICAgICAgZm9udC1zaXplIDIuM3JlbVxuICAgICAgICAgICAgbWFyZ2luIC0xcHggLTFweFxuICAgICAgICAgICAgaGVpZ2h0IDMwcHhcbiAgICAgICAgICAgIHdpZHRoIDMwcHhcbiAgICAgICAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgICAgICAgICBsaW5lLWhlaWdodCAzMXB4XG4gICAgICAgICAgICBjb2xvciAjNzg4MDg3XG4gICAgICAgIC5hZGRfY29kZTpob3ZlclxuICAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNlNDFkMWRcbiAgICAgICAgICAgYmFja2dyb3VuZCAjZTQxZDFkXG4gICAgICAgICAgIC5pY29uLWRhaW1hXG4gICAgICAgICAgICBjb2xvciAjZmZmXG4gICAgICAgICNsYW5nX2xpc3RcbiAgICAgICAgICBmb250LXNpemUgMTJweFxuICAgICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgICAgei1pbmRleCA5OTlcbiAgICAgICAgICBsZWZ0IDMwcHhcbiAgICAgICAgICB0b3AgMFxuICAgICAgICAgIG1heC13aWR0aCA0MDBweFxuICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgIGFcbiAgICAgICAgICAgIG1pbi13aWR0aCA3MHB4XG4gICAgICAgICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgICAgICAgY3Vyc29yIHBvaW50ZXJcbiAgICAgICAgICAgIHBhZGRpbmcgMHB4IDVweFxuICAgICAgICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICAgICAgICAgIGZsb2F0IGxlZnRcbiAgICAgICAgICBhOmhvdmVyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICM2NjZcbiAgICAgICAgICAgIGNvbG9yICNmZmZcbiAgICAgICAgLmJ0bi1yZWRib3JkZXJcbiAgICAgICAgICBmbG9hdCByaWdodFxuICAgICAgICAgIGJvcmRlciAxcHggc29saWQgI2NhMGMxNlxuICAgICAgICAgIGNvbG9yICNjYTBjMTZcbiAgICAgICAgICAmOmFjdGl2ZSwmOmZvY3VzXG4gICAgICAgICAgICBiYWNrZ3JvdW5kICNmZmZcbiAgICAgICAgICAmOmhvdmVyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICNjYTBjMTZcbiAgICAgICAgICAgIGNvbG9yICNmZmZcbiAgICAgICAgI3RpcF9jb21tZW50XG4gICAgICAgICAgZmxvYXQgcmlnaHRcbiAgICAgICAgICBtYXJnaW4tcmlnaHQgMTBweFxuICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICBjb2xvciAjOTk5XG4gICAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gIC5jb21tZW50X2JveFxuICAgIG1hcmdpbi10b3AgMjBweFxuICAgIGJvcmRlci1ib3R0b20gMXB4IHNvbGlkICNmNGY0ZjRcbiAgICBwYWRkaW5nIDE4cHggMzBweCAwIDMwcHhcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgLmNvbW1lbnRfbGlfb3V0Ym94XG4gICAgLy8gbWFyZ2luLXRvcDogMjBweDtcbiAgICBib3gtc2hhZG93IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4wNSlcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICBvdmVyZmxvdyBoaWRkZW5cbiAgICAjY29tbWVudF9saXN0XG4gICAgICBwYWRkaW5nIDEwcHggMzBweCAxNXB4IDMwcHhcbiAgICAgIC5ub0NvbW1lbnRcbiAgICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgLmNvbW1lbnRfbGlfYm94XG4gICAgLy8gYm9yZGVyLXRvcCAxcHggZGFzaGVkICNFNUU1RTVcbiAgICBwYWRkaW5nLXRvcCAxMHB4XG4gICAgbWFyZ2luLXRvcCAtNnB4XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjZTVlNWU1O1xuICAgIC5jb21tZW50X2xpc3RcbiAgICAgIC8vIHBhZGRpbmctYm90dG9tIDE1cHhcbiAgICAgIC8vIGJvcmRlci1ib3R0b20gMXB4IGRhc2hlZCAjRTVFNUU1XG4gICAgICBtYXJnaW4tdG9wIDEwcHhcbiAgICAgIGR0XG4gICAgICAgIGZsb2F0IGxlZnRcbiAgICAgICAgd2lkdGggMzBweFxuICAgICAgICBoZWlnaHQgMzBweFxuICAgICAgICBtYXJnaW4tcmlnaHQgMTBweFxuICAgICAgICBpbWdcbiAgICAgICAgICB3aWR0aCAzMHB4XG4gICAgICAgICAgaGVpZ2h0IDMwcHhcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDIwcHhcbiAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNlN2U3ZTdcbiAgICAgIGRkXG4gICAgICAgIGZsb2F0IGxlZnRcbiAgICAgICAgd2lkdGggNzA2cHhcbiAgICAgICAgdWwuY29tX3JcbiAgICAgICAgICBsaVxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbSA1cHhcbiAgICAgICAgICAgIG1hcmdpbi10b3AgNXB4XG4gICAgICAgICAgbGkudG9wXG4gICAgICAgICAgICBoNFxuICAgICAgICAgICAgICBmb250LXdlaWdodCBib2xkXG4gICAgICAgICAgICAgIGNvbG9yICM0ZjRmNGZcbiAgICAgICAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgICAgICBtYXJnaW4tdG9wIDJweFxuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQgMTVweFxuICAgICAgICAgICAgICBhXG4gICAgICAgICAgICAgICAgY29sb3IgIzQwOTNjNlxuICAgICAgICAgICAgICAgICY6aG92ZXJcbiAgICAgICAgICAgICAgICAgIGNvbG9yICNDQTBDMTZcbiAgICAgICAgICAgIC50aW1lXG4gICAgICAgICAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgICAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICAgICAgICBjb2xvciAjQ0NDQ0NDIFxuICAgICAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgICAgLmZsb29yX251bVxuICAgICAgICAgICAgICBmbG9hdCByaWdodFxuICAgICAgICAgICAgICBjb2xvciAjQ0NDQ0NDIFxuICAgICAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgIGxpLm1pZFxuICAgICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICAgIGNvbG9yICM0RjRGNEZcbiAgICAgICAgICAgIGRpdlxuICAgICAgICAgICAgICB3b3JkLXdyYXAgYnJlYWstd29yZFxuICAgICAgICAgICAgICB3b3JkLWJyZWFrIGJyZWFrLWFsbFxuICAgICAgICAgICAgICAuYnRuLW5vYm9yZGVyW2hyZWY9XCIjZGVsZXRlXCJdLC5jb21fcmVwbHlbaHJlZj1cIiNkZWxldGVcIl1cbiAgICAgICAgICAgICAgICB3aWR0aCA2MHB4XG4gICAgICAgICAgbGkuYm90LGxpLm1pZFxuICAgICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICAgIGNvbG9yICM0MzQzNDNcbiAgICAgICAgICAgIGRpdlxuICAgICAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgICAgIGEuYnRuLW5vYm9yZGVyXG4gICAgICAgICAgICAgIGJ1dHRvbi5idG4tbm9ib3JkZXJcbiAgICAgICAgICAgICAgICBwYWRkaW5nIDBcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQgMTZweFxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgICAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgICAgICAgICBjb2xvciAjNDA5M2M2XG4gICAgICAgICAgICAgICAgJjpob3ZlclxuICAgICAgICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAgICAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgICAgIGNvbG9yICM0MDkzYzZcbiAgICAgICAgICAgICAgYS5jb21fcmVwbHlbaHJlZj1cIiNkZWxldGVcIl1cbiAgICAgICAgICAgICAgICBmbG9hdCByaWdodFxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodCAwXG4gICAgICAgICAgICAgICAgY29sb3IgI2U0MWQxZFxuICAgICAgICAgICAgICAgICY6aG92ZXJcbiAgICAgICAgICAgICAgICAgIGNvbG9yICNjYTBjMTZcbiAgICAuY2hpbGRfY29tbWVudFxuICAgICAgbWFyZ2luLWxlZnQgNTBweFxuICAgICAgaGVpZ2h0IDBcbiAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgLmNvbW1lbnRfbGlzdFxuICAgICAgICBkZFxuICAgICAgICAgIHdpZHRoIDY1MHB4XG4gICAgICAgICAgdWxcbiAgICAgICAgICAgIGxpLnRvcFxuICAgICAgICAgICAgICBoNFxuICAgICAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0IGJvbGRcbiAgICAgICAgICAgIGxpLm1pZFxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tIDBcbiAgICAgICAgICAgICAgbGFiZWxcbiAgICAgICAgICAgICAgICAuYnRuLW5vYm9yZGVyW2hyZWY9XCIjZGVsZXRlXCJdXG4gICAgICAgICAgICAgICAgICB3aWR0aCBhdXRvXG4gICAgICAgICAgICBsaS5ib3RcbiAgICAgICAgICAgICAgLmJ0bi1ub2JvcmRlcjpsaW5rLFxuICAgICAgICAgICAgICAuYnRuLW5vYm9yZGVyOnZpc2l0ZWQsXG4gICAgICAgICAgICAgIC5idG4tbm9ib3JkZXI6YWN0aXZlXG4gICAgICAgICAgICAgICAgY29sb3IgIzJGODdGRlxuICAgICAgLmNvbW1lbnRfbGlzdDpsYXN0LWNoaWxkXG4gICAgICAgIGJvcmRlci1ib3R0b20gMFxuICAgICAgICBtYXJnaW4tYm90dG9tIDBcbiAgICAubGlzdF9zaG93XG4gICAgICBoZWlnaHQgYXV0b1xuICAubW9yZV9jb21tZW50XG4gICAgYmFja2dyb3VuZC1jb2xvciAjZmZmXG4gICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICAjY29tbWVudF9iYXJcbiAgICAgIHBhZGRpbmctYm90dG9tIDE1cHhcbiAgICAgIGJveC1zaGFkb3cgMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjA1KVxuICAgICAgLnBhZ2Vib3hcbiAgICAgICAgXG4gICAgICAgIC5wYWdlX2J0blxuICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgd2lkdGggMjBweFxuICAgICAgICAgIGhlaWdodCAyMHB4XG4gICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNENUQ1RDVcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDRweFxuICAgICAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgICAgICAgbGluZS1oZWlnaHQgMTdweFxuICAgICAgICAgIG1hcmdpbi1sZWZ0IDEwcHhcbiAgICAgICAgICBtYXJnaW4tcmlnaHQgMTBweFxuICAgICAgICAgIGNvbG9yICM0RjRGNEZcbiAgICAgICAgICBjdXJzb3IgcG9pbnRlclxuICAgICAgICAgICY6aG92ZXJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgI2NhMGMxNlxuICAgICAgICAgICAgY29sb3IgI2ZmZlxuICAgICAgICAgICAgaVxuICAgICAgICAgICAgICBjb2xvciAjZmZmXG4gICAgICAgICAgaVxuICAgICAgICAgICAgY29sb3IgIzRGNEY0RlxuICAgICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgICAgICAgICY6aG92ZXJcbiAgICAgICAgICAgICAgY29sb3IgI2ZmZlxuICAgICAgICAucGFnZV9oZWFkZXIsXG4gICAgICAgIC5wYWdlX2Zvb3RlclxuICAgICAgICAgIHdpZHRoIDIwcHhcbiAgICAgICAgICBoZWlnaHQgMjBweFxuICAgICAgICAucGFnZV9hY3RpdlxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgI2NhMGMxNlxuICAgICAgICAgIGNvbG9yICNmZmZcbiAgICAgIC5tb3JlX2NvbW1lbnRfYnRuXG4gICAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgICAgIGNvbG9yICM3ODkwOWNcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvciAjZmZmXG4gICAgICAgIGN1cnNvciBwb2ludGVyXG4gICAgICAgIGZvbnQtc2l6ZSAxMnB4XG4gICAgICAgIGlcbiAgICAgICAgICBjb2xvciAjNzg5MDljXG4gICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgLnJlY29tbWVuZF90aXRcbiAgICBwYWRkaW5nIDIwcHggMCAyMHB4XG4gICAgZm9udC1zaXplIDIwcHhcbiAgICBjb2xvciAjMzMzMzMzXG4gICAgY2xlYXIgYm90aFxuICAgIG92ZXJmbG93IGhpZGRlblxuICAgIHRleHQtYWxpZ24gY2VudGVyXG4gIC5yZWNvbW1lbmRfbGlzdFxuICAgIGJhY2tncm91bmQtY29sb3IgI2ZmZlxuICAgIGJveC1zaGFkb3cgMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjA1KVxuICAgIC5SZWNvbW1lbmRfbG9hZGFuQW5pbWF0aW9uXG4gICAgICBtYXJnaW4tbGVmdCAyMHB4XG4gICAgZGxcbiAgICAgIGJvcmRlci1ib3R0b20gMXB4IHNvbGlkICNmNGY0ZjRcbiAgICAgIHBhZGRpbmctbGVmdCAyMHB4XG4gICAgICBwYWRkaW5nLXJpZ2h0IDIwcHhcbiAgICAgIHBhZGRpbmctYm90dG9tIDIwcHhcbiAgICAgIHBhZGRpbmctdG9wIDIwcHhcbiAgICAgIGR0XG4gICAgICAgIGZsb2F0IGxlZnRcbiAgICAgICAgd2lkdGggMTIwcHhcbiAgICAgICAgaGVpZ2h0IDkwcHhcbiAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgIG1hcmdpbi1yaWdodCAyMHB4XG4gICAgICAgIGltZ1xuICAgICAgICAgIHdpZHRoIDEyMHB4XG4gICAgICAgICAgaGVpZ2h0IDEyNnB4XG4gICAgICAgIC5tYXh3aWR0aFxuICAgICAgICAgIG1heC13aWR0aCAxMjBweFxuICAgICAgICAgIGhlaWdodCBhdXRvXG4gICAgICBkZFxuICAgICAgICBoMlxuICAgICAgICAgIGZvbnQtc2l6ZSAxOHB4XG4gICAgICAgICAgY29sb3IgIzJjMzAzM1xuICAgICAgICAgIGZvbnQtd2VpZ2h0IGJvbGRcbiAgICAgICAgICBtYXJnaW4tYm90dG9tIDEycHhcbiAgICAgICAgICBsaW5lLWhlaWdodCAyOHB4XG4gICAgICAgICAgdGV4dC1vdmVyZmxvdyBlbGxpcHNpc1xuICAgICAgICAgIHdoaXRlLXNwYWNlIG5vd3JhcFxuICAgICAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgICAgIGFcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0IGJvbGRcbiAgICAgICAgICAgIGNvbG9yICMyYzMwMzNcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3cgZWxsaXBzaXNcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlIG5vd3JhcFxuICAgICAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2tcbiAgICAgICAgICBhXG4gICAgICAgICAgYTpsaW5rXG4gICAgICAgICAgYTp2aXNpdGVkXG4gICAgICAgICAgICBjb2xvciAjMmMzMDMzXG4gICAgICAgICAgYTpob3ZlclxuICAgICAgICAgIGE6YWN0aXZlXG4gICAgICAgICAgYTpmb2N1c1xuICAgICAgICAgICAgY29sb3IgI2U0MWQxZFxuICAgICAgICAud2VjaGF0X25hbWVcbiAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgIG1hcmdpbi1ib3R0b20gMTBweFxuICAgICAgICAuc3VtbWFyeVxuICAgICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgICAgY29sb3IgIzhlOTU5YVxuICAgICAgICAgIGxpbmUtaGVpZ2h0IDI0cHhcbiAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tIDhweFxuICAgICAgICAgIC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGxcbiAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGxcbiAgICAgICAgICB3aGl0ZS1zcGFjZSBub3JtYWwhaW1wb3J0YW50XG4gICAgICAgICAgYVxuICAgICAgICAgIGE6bGlua1xuICAgICAgICAgIGE6dmlzaXRlZFxuICAgICAgICAgICAgY29sb3IgIzJjMzAzM1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uIG5vbmVcbiAgICAgICAgICBhOmhvdmVyXG4gICAgICAgICAgYTphY3RpdmVcbiAgICAgICAgICBhOmZvY3VzXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAgICAgICB1bFxuICAgICAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgICAgIGxpXG4gICAgICAgICAgICBmbG9hdCBsZWZ0XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQgMjBweFxuICAgICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICAgIG1hcmdpbi10b3AgMTBweFxuICAgICAgICAgICAgY29sb3IgI2NjY1xuICAgICAgICAgIGxpLnZpc2l0ZWRfbnVtXG4gICAgICAgICAgICBtYXJnaW4tdG9wIDlweFxuICAgICAgICAgICAgY29sb3IgIzg4OFxuICAgICAgICAgICAgaVxuICAgICAgICAgICAgICBjb2xvciAjQ0NDXG4gICAgICAgICAgICBzcGFuXG4gICAgICAgICAgICAgIGNvbG9yICNDQ0NcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ24gdGV4dC1ib3R0b21cbiAgICAgICAgICBsaS5hdmF0YXJfaW1nXG4gICAgICAgICAgICB3aWR0aCAyNHB4XG4gICAgICAgICAgICBoZWlnaHQgMjRweFxuICAgICAgICAgICAgbWFyZ2luLXRvcCA4cHhcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodCA3cHhcbiAgICAgICAgICAgIGltZ1xuICAgICAgICAgICAgICB3aWR0aCAyNHB4XG4gICAgICAgICAgICAgIGhlaWdodCAyNHB4XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXMgMjBweFxuICAgICAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNlN2U3ZTdcbiAgICAgICAgICBsaS51c2VyX25hbWVcbiAgICAgICAgICAgIGNvbG9yICM4ODhcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgY29sb3IgIzg4OFxuICAgICAgICAgICAgICAmOmhvdmVyXG4gICAgICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAgICAgICAgIGxpLmZpbGVTaXplXG4gICAgICAgICAgICBjb2xvciAjQ0NDQ0NDXG4gICAgICAgICAgbGkuZG93bmxvYWRfYnRuXG4gICAgICAgICAgICBhXG4gICAgICAgICAgICBhOmxpbmtcbiAgICAgICAgICAgIGE6dmlzaXRlZFxuICAgICAgICAgICAgYTpob3ZlclxuICAgICAgICAgICAgYTphY3RpdmVcbiAgICAgICAgICAgIGE6Zm9jdXNcbiAgICAgICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQgMjBweFxuICAgICAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgICAgIHdpZHRoIDM4cHhcbiAgICAgICAgICAgICAgaGVpZ2h0IDIycHhcbiAgICAgICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjOERDQ0Q5XG4gICAgICAgICAgICAgIGNvbG9yICM4RENDRDlcbiAgICAuZG93bmxvYWRFbGVtZW50XG4gICAgICBwYWRkaW5nLWJvdHRvbSAxNnB4XG4gICAgICBwYWRkaW5nLXRvcCAxNnB4XG4gICAgICBkdFxuICAgICAgICBoZWlnaHQgNzBweFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICNlZWVcbiAgICAgICAgYVxuICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgaW1nXG4gICAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgICB3aWR0aCA0MnB4XG4gICAgICAgICAgICBoZWlnaHQgNDhweFxuICAgICAgICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICAgICAgICAgIG1hcmdpbiAwIGF1dG9cbiAgICAgICAgICAgIG1hcmdpbi10b3AgMTFweFxuICAgICAgZGRcbiAgICAgICAgaGVpZ2h0IDcwcHhcbiAgICAgICAgZGl2XG4gICAgICAgICAgaDJcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgICAgICAgd2lkdGggNzEwcHhcbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdyBlbGxpcHNpc1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZSBub3dyYXBcbiAgICAgICAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrXG4gICAgICAgICAgICAub3ZlcmZsb3ctaGlkZS10aXRsZS1oZWlnaHRcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQgMjhweFxuICAgICAgICAgICAgICBtYXgtaGVpZ2h0IDI4cHhcbiAgICAubm9tb3JlX2JveFxuICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgICBtYXJnaW4gMCBhdXRvXG4gICAgICB3aWR0aCAzMDBweFxuICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgIGNvbG9yICM4ODg4ODhcbiAgICAgIHBhZGRpbmcgMTBweCAwXG4gICAgICBhXG4gICAgICAgIGNvbG9yICM0MDkzYzZcbiAgICAgICAgJjpob3ZlclxuICAgICAgICAgIGNvbG9yICM0MDkzYzZcbi5hcnRpY2xlX2NvbnRlbnRcbiAgbWFyZ2luLWJvdHRvbSAzMHB4XG4gIGNvbG9yICM0NTQ1NDVcbiAgcGFkZGluZyAyMHB4IDMwcHggMCAzMHB4XG4gIGFcbiAgICBjb2xvciAjNDI4YmNhXG4gICAgJjpob3ZlciwmOnZpc2l0ZWQsJjphY3RpdmVcbiAgICAgIGNvbG9yICNjYTBjMTZcbiAgLm1hcmtkb3duX3ZpZXdzXG4gICAgdWxcbiAgICAgIGxpc3Qtc3R5bGUgZGlzY1xuICAgICAgbGlcbiAgICAgICAgZGlzcGxheSBsaXN0LWl0ZW1cbiAgICAgICAgbGlzdC1zdHlsZSBkaXNjXG4gICAgICAgIG1hcmdpbi1sZWZ0IDQwcHhcbiAgICBvbFxuICAgICAgbGlzdC1zdHlsZSBkZWNpbWFsXG4gICAgICBsaVxuICAgICAgICBkaXNwbGF5IGxpc3QtaXRlbVxuICAgICAgICBsaXN0LXN0eWxlIGRlY2ltYWxcbiAgICAgICAgbWFyZ2luLWxlZnQgNDBweFxuICAgIGRsXG4gICAgICBtYXJnaW4tdG9wIDBcbiAgICAgIG1hcmdpbi1ib3R0b20gMjFweFxuICAgICAgZGQgXG4gICAgICAgIG1hcmdpbi1sZWZ0IDQwcHhcbiAgICAgIGR0LCBkZCBcbiAgICAgICAgbWFyZ2luLXRvcCA1cHhcbiAgICAgICAgbWFyZ2luLWJvdHRvbSA1cHhcbi5hcnRpY2xlX0hpZGVcbiAgaGVpZ2h0IDEwMHB4XG4gIG92ZXJmbG93IGhpZGRlblxuXG5AbWVkaWEobWluLXdpZHRoOjE1MzBweClcbiAgLmxlZnRfZml4ZWRcbiAgICAuc21hbGxTaG93XG4gICAgICAubGlzdF9mYXRoZXJcbiAgICAgICAgcG9zaXRpb25cbiNwb3Bfd2luXG4gIGRpc3BsYXkgbm9uZVxuICBwb3NpdGlvbiBhYnNvbHV0ZVxuICB6LWluZGV4IDEwMDAwXG4gIGJvcmRlciAxcHggc29saWQgcmdiKDIyMCwgMjIwLCAyMjApXG4gIHRvcCAyMjIuNXB4IFxuICBsZWZ0IDYzMHB4XG4gIG9wYWNpdHkgMSBcbiAgYmFja2dyb3VuZCBub25lIDBweCAwcHggcmVwZWF0IHNjcm9sbCByZ2IoMjU1LCAyNTUsIDI1NSlcbiNwb3B1cF9tYXNrXG4gIHBvc2l0aW9uIGFic29sdXRlXG4gIHdpZHRoIDEwMCVcbiAgaGVpZ2h0IDEwMCVcbiAgYmFja2dyb3VuZCAjMDAwXG4gIHotaW5kZXggOTk5OVxuICBsZWZ0IDBweFxuICB0b3AgMHB4XG4gIG9wYWNpdHkgMC4zXG4gIGRpc3BsYXkgbm9uZVxuICBcbi5ndWVzdF9saW5rXG4gIG1hcmdpbi1ib3R0b20gMjBweFxuICBjbGVhciBib3RoXG4gIG92ZXJmbG93IGhpZGRlblxuICBoZWlnaHQgODBweFxuICBmb250LWZhbWlseSBNaWNyb3NvZnRZYUhlaVxuICBmb250LXNpemUgMTRweFxuICBjb2xvciAjNGY0ZjRmXG4gIHRleHQtYWxpZ24gY2VudGVyXG4gIGJhY2tncm91bmQgI2U3ZWNmMFxuICAubG9nX2ljb1xuICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgd2lkdGggNDBweFxuICAgIGhlaWdodCA0MHB4XG4gICAgYm9yZGVyLXJhZGl1cyAyMHB4XG4gICAgbGluZS1oZWlnaHQgNDBweFxuICAgIG1hcmdpbi10b3AgMjBweFxuICAgIG1hcmdpbi1yaWdodCAyMHB4XG4gICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgICB2ZXJ0aWNhbC1hbGlnbiB0b3BcbiAgICBiYWNrZ3JvdW5kICNhZmJhYzNcbiAgICBpXG4gICAgICBjb2xvciAjZTJlOWVmXG4gIC50eHRcbiAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgIHZlcnRpY2FsLWFsaWduIHRvcFxuICAgIG1hcmdpbi10b3AgMjhweFxuICAgIGE6bGlua1xuICAgIGE6dmlzaXRlZFxuICAgIGE6aG92ZXJcbiAgICBhOmFjdGl2ZVxuICAgICAgY29sb3IgI2U3MzEzMVxuICAgICAgdGV4dC1kZWNvcmF0aW9uIHVuZGVybGluZVxuLmxvZ2luX3RpcF9iZ1xuICBwb3NpdGlvbiBmaXhlZFxuICB6LWluZGV4IDk5OTk5XG4gIGxlZnQgMFxuICB0b3AgMFxuICB3aWR0aCAxMDAlXG4gIGhlaWdodCAxMDAlXG4gIGJhY2tncm91bmQgcmdiYSgwLDAsMCwuNSlcbi5sb2dpbl90aXBfYm94XG4gIHBvc2l0aW9uIGZpeGVkXG4gIHotaW5kZXggOTk5OTk5XG4gIGxlZnQgNTAlXG4gIHRvcCAzMCVcbiAgbWFyZ2luLWxlZnQgLTE5MHB4XG4gIHdpZHRoIDM4MHB4XG4gIGhlaWdodCAxMjBweFxuICBib3JkZXItcmFkaXVzIDNweFxuICBwYWRkaW5nLXRvcCA1MHB4XG4gIHRleHQtYWxpZ24gY2VudGVyXG4gIGJhY2tncm91bmQgcmdiYSgyNTUsMjU1LDI1NSwxKVxuICBhOmxpbmtcbiAgYTpob3ZlclxuICBhOnZpc2l0ZWRcbiAgYTphY3RpdmVcbiAgICBjb2xvciAjZTczMTMxXG4gICAgdGV4dC1kZWNvcmF0aW9uIHVuZGVybGluZSBcbiAgLmNsb3NlXG4gICAgZGlzcGxheSBibG9ja1xuICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgcmlnaHQgMTBweFxuICAgIHRvcCAxMHB4XG4gICAgZm9udC1zaXplIDEycHhcbiAgICBjb2xvciAjNjY2XG5cbkBtZWRpYShtYXgtd2lkdGg6NzY4cHgpICAgIFxuICBwXG4gICAgc3BhblxuICAgICAgd2hpdGUtc3BhY2UgcHJlLXdyYXAhaW1wb3J0YW50XG4gIC5tYXJrZG93bl92aWV3c1xuICAgIHByZVxuICAgICAgY29kZVxuICAgICAgICB3aGl0ZS1zcGFjZSBwcmUtd3JhcCFpbXBvcnRhbnRcblxuQG1lZGlhKG1pbi13aWR0aDo3NjhweCkgXG4gIG1haW5cbiAgICAucmVjb21tZW5kX2xpc3QgXG4gICAgICAuZG93bmxvYWRFbGVtZW50IFxuICAgICAgICBkZCBcbiAgICAgICAgICBkaXYgXG4gICAgICAgICAgICBoMiBcbiAgICAgICAgICAgICAgYVxuICAgICAgICAgICAgICAgIHdpZHRoIDYzMHB4XG5AbWVkaWEobWluLXdpZHRoOjEzNjZweClcbiAgLmNvbnRhaW5lclxuICAgIHdpZHRoIDExOTBweFxuICBtYWluXG4gICAgd2lkdGggODQwcHhcbiAgICAuY29tbWVudF9saV9ib3hcbiAgICAgIC5jb21tZW50X2xpc3RcbiAgICAgICAgZGRcbiAgICAgICAgICB3aWR0aCA3MTBweFxuICAgIC5jb21tZW50X2JveCBcbiAgICAgIC5jb21tZW50X2FyZWEgXG4gICAgICAgIGZvcm1cbiAgICAgICAgICB3aWR0aDogOTQuMiU7XG4gICAgLnJlY29tbWVuZF9saXN0IFxuICAgICAgLmRvd25sb2FkRWxlbWVudCBcbiAgICAgICAgZGQgXG4gICAgICAgICAgZGl2IFxuICAgICAgICAgICAgaDIgXG4gICAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgICB3aWR0aCA2NjBweFxuQG1lZGlhKG1pbi13aWR0aDoxNDQwcHgpXG4gIC5jb250YWluZXJcbiAgICB3aWR0aCAxMjcwcHhcbiAgbWFpblxuICAgIHdpZHRoIDkyMHB4XG4gICAgLmNvbW1lbnRfbGlfYm94XG4gICAgICAuY29tbWVudF9saXN0XG4gICAgICAgIGRkXG4gICAgICAgICAgd2lkdGggODAwcHhcbiAgICAuY29tbWVudF9ib3ggXG4gICAgICAuY29tbWVudF9hcmVhIFxuICAgICAgICBmb3JtXG4gICAgICAgICAgd2lkdGg6IDk0LjclO1xuICAgIC5yZWNvbW1lbmRfbGlzdCBcbiAgICAgIC5kb3dubG9hZEVsZW1lbnQgXG4gICAgICAgIGRkIFxuICAgICAgICAgIGRpdiBcbiAgICAgICAgICAgIGgyIFxuICAgICAgICAgICAgICBhXG4gICAgICAgICAgICAgICAgd2lkdGggNzQwcHhcbi5tYXJrZG93bl92aWV3c1xuICAuTWF0aEpheFxuICAgIG5vYnJcbiAgICAgIC5tYXRoXG4gICAgICAgIHNwYW5cbiAgICAgICAgICAmOmxhc3QtY2hpbGRcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciB0cmFuc3BhcmVudCFpbXBvcnRhbnRcblxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC5rZXl3b3JkX3JlZCwgLmtleXdvcmRfZ3JlZW4sIC5rZXl3b3JkX3llbGxvdywgLnRhZ19jYXRlZ29yeSwgLmtleXdvcmQge1xuICBiYWNrZ3JvdW5kOiMwNmE7XG4gIGNvbG9yOndoaXRlO1xuICBwYWRkaW5nOjRweCA1cHggMnB4O1xuICBmb250LXNpemU6MTRweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW4tcmlnaHQ6NXB4O1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cbmJvZHkgI2FydGljbGVfY29udGVudCAua2V5d29yZF9yZWQua2V5d29yZCB7XG4gIGJhY2tncm91bmQ6I0ZGMzMzMztcbiAgY29sb3I6d2hpdGU7XG59XG5ib2R5ICNhcnRpY2xlX2NvbnRlbnQgLmtleXdvcmRfZ3JlZW4ua2V5d29yZCB7XG4gIGJhY2tncm91bmQ6IzAwNjYwMDtcbiAgY29sb3I6d2hpdGU7XG59XG5ib2R5ICNhcnRpY2xlX2NvbnRlbnQgLmtleXdvcmRfeWVsbG93LmtleXdvcmQge1xuICBiYWNrZ3JvdW5kOiNGRjk5MzM7XG4gIGNvbG9yOndoaXRlO1xufVxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC50YWdfY2F0ZWdvcnkua2V5d29yZCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDoxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OjEwcHg7XG4gIGJhY2tncm91bmQ6ICNDRDg1M0Y7XG4gIGNvbG9yOiAjRkZGO1xufVxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC5tbF9pdGVtIHtcbiAgYm9yZGVyOjFweCBzb2xpZCAjREREO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgYmFja2dyb3VuZDogI2VlZTtcbiAgcGFkZGluZzogMTBweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC5tbF9pdGVtIHNwYW4gYSBpbWcge1xuICB3aWR0aDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW4tdG9wOiAtNHB4O1xufVxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC5tbF9pdGVtIHNwYW4gYSB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC5tbF9pdGVtIGRpdiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1heC1oZWlnaHQ6IDQyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuYm9keSAjYXJ0aWNsZV9jb250ZW50IC5tbF9pdGVtIGRpdiBhIGltZyB7XG4gIG1heC13aWR0aDogMjYwcHg7XG59XG4gXG5ib2R5IC5jc2RuX2xvZ2luYm94IC5jbG9zZVxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXggLTEwcHhcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15IC0xOXB4IiwiYXNpZGVcbiAgZmxvYXQgcmlnaHRcbiAgd2lkdGggMjk4cHhcbiAgLnJpZ2h0X2JveFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZcbiAgICB3aWR0aCAxMDAlXG4gICAgYm94LXNoYWRvdyAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuMDUpXG4gICAgcGFkZGluZy10b3A6IDIwcHhcbiAgICBtYXJnaW4tYm90dG9tIDIwcHhcbiAgICBoMy50aXRcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGNvbG9yOiAjNEY0RjRGO1xuICAgICAgaGVpZ2h0IDI4cHhcbiAgICAgIG92ZXJmbG93IHZpc2libGVcbiAgICAgIG1hcmdpbi1ib3R0b20gOHB4XG4gICAgICBzcGFuXG4gICAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICBoZWlnaHQgMjhweFxuICAgICAgICBmb250LXNpemUgMTZweFxuICAgICAgICBjb2xvciAjMzMzXG4gICAgICAgIHBhZGRpbmctbGVmdCAyMHB4XG4gICAgICAgIGVtXG4gICAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgICBtYXJnaW4gMCAwXG4gICAgICAgICAgLy8gYm9yZGVyLWxlZnQgM3B4IHNvbGlkIHJlZFxuICAgICAgICAgIHBhZGRpbmctbGVmdCA2cHhcbiAgLm5ld19jb2x1bW5cbiAgICBwYWRkaW5nLXRvcCAxMnB4XG4gICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICBtaW4taGVpZ2h0IDIyMHB4XG4gICAgaDMudGl0XG4gICAgICBjdXJzb3IgcG9pbnRlclxuICAgICAgcGFkZGluZy1sZWZ0IDBcbiAgICAgIGJvcmRlci1ib3R0b20gMnB4IHNvbGlkICNEOURGRTZcbiAgICAgIGZsb2F0IGxlZnRcbiAgICAgIHdpZHRoIDUwJVxuICAgICAgc3BhblxuICAgICAgICBwYWRkaW5nLWxlZnQgMFxuICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgIGVtXG4gICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgIGZvbnQtc2l6ZSAxNnB4XG4gICAgICAgICAgY29sb3IgIzJDMzAzM1xuICAgICAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgaDM6Zmlyc3QtY2hpbGRcbiAgICAgIGJvcmRlci1ib3R0b20gMnB4IHNvbGlkIHJlZFxuICAgIC5yZWNvbW1lbmRcbiAgICAgIGRpc3BsYXkgYmxvY2tcbiAgZGwuaW5mX2JhclxuICAgIG1hcmdpbiAwIDAgMjJweCAyMHB4XG4gICAgZHRcbiAgICAgIGZsb2F0IGxlZnRcbiAgICAgIHdpZHRoIDYwcHhcbiAgICAgIGhlaWdodCA2MHB4XG4gICAgICBtYXJnaW4tcmlnaHQgMTBweFxuICAgICAgb3ZlcmZsb3cgdmlzaWJsZVxuICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgIGltZy5hdmF0YXJfcGljXG4gICAgICAgIHdpZHRoIDYwcHhcbiAgICAgICAgaGVpZ2h0IDYwcHhcbiAgICAgICAgYm9yZGVyLXJhZGl1cyA1MCVcbiAgICAgICAgYm9yZGVyIHNvbGlkIDFweCAjZTRlZGY0XG4gICAgICBzcGFuLm1lZGFsc1xuICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgIHdpZHRoIDI1cHhcbiAgICAgICAgaGVpZ2h0IDI1cHhcbiAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgYm90dG9tIC0xMnB4XG4gICAgICAgIGxlZnQgMTdweFxuICAgICAgICB6LWluZGV4IDNcbiAgICAgICAgLmljb25cbiAgICAgICAgICB3aWR0aCAyNXB4XG4gICAgICAgICAgaGVpZ2h0IDI1cHhcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbiAtMC4xNWVtXG4gICAgICAgICAgZmlsbCBjdXJyZW50Q29sb3JcbiAgICAgICAgICBvdmVyZmxvdyBoaWRkZW5cbiAgICBkZFxuICAgICAgbWFyZ2luLWxlZnQgNzBweFxuICAgICAgaDNcbiAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgY29sb3IgIzRGNEY0RlxuICAgICAgICBmb250LXdlaWdodCBib2xkXG4gICAgICAgIGxpbmUtaGVpZ2h0IDI2cHhcbiAgICAgICAgcGFkZGluZyAzcHggMFxuICAgICAgICBtYXJnaW4gLTVweCAwIDEwcHhcbiAgICAgICAgaGVpZ2h0IDI2cHhcbiAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgIHdoaXRlLXNwYWNlIG5vd3JhcFxuICAgICAgICB0ZXh0LW92ZXJmbG93IGVsbGlwc2lzXG4gICAgICAgIHdpZHRoIDE4MXB4XG4gICAgICAgIGFcbiAgICAgICAgICBmb250LXdlaWdodCBib2xkXG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4XG4gICAgICAgICAgY29sb3IgIzJjMzAzM1xuICAgICAgLmJ0bi1yZWRib3JkZXItc21hbGxcbiAgICAgICAgcGFkZGluZyAwIDVweFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICAgICAgJjpob3ZlclxuICAgICAgICAgIGNvbG9yICNmZmZcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICNkZTY4NmRcbiAgICAgIC5hdHRlbnRlZFxuICAgICAgICBiYWNrZ3JvdW5kICNkNmQ2ZDZcbiAgICAgICAgYm9yZGVyLWNvbG9yICNkNmQ2ZDZcbiAgICAgICAgY29sb3IgI2ZmZlxuICAuaW5mX251bWJlcl9ib3hcbiAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgIGJvcmRlci1ib3R0b20gMXB4IHNvbGlkICNlM2UzZTNcbiAgICBwYWRkaW5nLWJvdHRvbSAxMHB4XG4gICAgJiBkbDpudGgtY2hpbGQoNCkgZGQgLnRoaW5Gb250XG4gICAgICBmb250LXdlaWdodCA0MDBcbiAgICAgIFxuICAgICYgZGw6bnRoLWNoaWxkKDQpIGRkIGFcbiAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICBmb250LXdlaWdodCBib2xkXG4gICAgJiBkbDpudGgtY2hpbGQoNCkgZGQgYTpob3ZlclxuICAgICAgY29sb3I6cmVkXG4gICAgICBjdXJzb3I6cG9pbnRlclxuICAgIGRsXG4gICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgd2lkdGggMjIlXG4gICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgZHRcbiAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgY29sb3IgIzc4ODA4N1xuICAgICAgICBtYXJnaW4tYm90dG9tIDZweFxuICAgICAgZGRcbiAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgY29sb3IgIzRGNEY0RlxuICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgIGZvbnQtd2VpZ2h0IGJvbGRcbiAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gIC53cml0aW5nc1xuICAgIHBhZGRpbmc6IDIwcHggMjBweCAwIDIwcHhcbiAgdWwuaW5mX2xpc3RcbiAgICBmb250LXNpemUgMTRweFxuICAgIGNvbG9yICM0RjRGNEZcbiAgICBwYWRkaW5nLWJvdHRvbSA3cHhcbiAgICBsaVxuICAgICAgbWFyZ2luLWJvdHRvbSAxM3B4XG4gICAgICBzcGFuXG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgIGZsb2F0IGxlZnRcbiAgICAgICAgbWFyZ2luLWxlZnQgLTVweFxuICAgICAgICAuaWNvbi15b3VqaWFudG91XG4gICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgIGFcbiAgICAgIGE6bGlua1xuICAgICAgYTp2aXNpdGVkXG4gICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgIGxpbmUtaGVpZ2h0IDIycHhcbiAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICBtYXgtd2lkdGggMjQzcHhcbiAgICAgICAgY29sb3IgIzc1N0E3RVxuICAgICAgYTpob3ZlclxuICAgICAgYTpmb2N1c1xuICAgICAgYTphY3RpdmVcbiAgICAgICAgY29sb3IgI2NhMGMxNlxuICAucHVibGljX3NpZ25hbFxuICAgIGZvbnQtc2l6ZSAxMnB4XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweFxuICAgIGgzXG4gICAgICBmb250LWZhbWlseSAnTWljcm9zb2Z0IFlhSGVpJywnU2ltSGVpJywnQXJpYWwnLCdTaW1TdW4nXG4gICAgICBmb250LXNpemUgMTZweFxuICAgICAgZmxvYXQgbGVmdFxuICAgICAgY29sb3IgIzMzM1xuICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjY2YyNzMwXG4gICAgICBwYWRkaW5nLWxlZnQ6IDZweFxuICAgICAgbGluZS1oZWlnaHQgMTZweFxuICAgIGFcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGNvbG9yICM4ODhcbiAgICAubGVmdFxuICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgZmxvYXQgbGVmdFxuICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgIC5pY29uLWVyd2VpbWFcbiAgICAgICAgZm9udC1zaXplIDEwcHhcbiAgICAgICAgY29sb3IgIzRGNEY0RlxuICAgICAgICBtYXJnaW4gMnB4IDVweCAwIDBcbiAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICBmbG9hdCBsZWZ0XG4gICAgICAubGFyZ2VfcXJjb2RlXG4gICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICBsZWZ0IC0xODhweFxuICAgICAgICB0b3AgLTgwcHhcbiAgICAgICAgei1pbmRleCA5OTk5XG4gICAgICAgIHdpZHRoIDE4MHB4XG4gICAgICAgIGhlaWdodCAxODBweFxuICAgICAgICBib3JkZXIgMXB4ICNENUQ1RDUgc29saWRcbiAgICAgICAgYm9yZGVyLXJhZGl1cyAzcHhcbiAgICAgICAgcGFkZGluZyAxNHB4XG4gICAgICAgIGJhY2tncm91bmQgI2ZmZlxuICAgICAgICBzcGFuLmFycjpiZWZvcmVcbiAgICAgICAgICBjb250ZW50IFwiXCJcbiAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICB3aWR0aCAwXG4gICAgICAgICAgaGVpZ2h0IDBcbiAgICAgICAgICB0b3AgODRweFxuICAgICAgICAgIHJpZ2h0IC04cHhcbiAgICAgICAgICBib3JkZXItdG9wIDZweCBzb2xpZCB0cmFuc3BhcmVudFxuICAgICAgICAgIGJvcmRlci1ib3R0b20gNnB4IHNvbGlkIHRyYW5zcGFyZW50XG4gICAgICAgICAgYm9yZGVyLWxlZnQgOHB4IHNvbGlkICNlNWU1ZTVcbiAgICAgICAgc3Bhbi5hcnI6YWZ0ZXJcbiAgICAgICAgICBjb250ZW50IFwiXCJcbiAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICB3aWR0aCAwXG4gICAgICAgICAgaGVpZ2h0IDBcbiAgICAgICAgICB0b3AgODZweFxuICAgICAgICAgIHJpZ2h0IC02cHhcbiAgICAgICAgICBib3JkZXItdG9wIDRweCBzb2xpZCB0cmFuc3BhcmVudFxuICAgICAgICAgIGJvcmRlci1ib3R0b20gNHB4IHNvbGlkIHRyYW5zcGFyZW50XG4gICAgICAgICAgYm9yZGVyLWxlZnQgNnB4IHNvbGlkICNmZmZcbiAgICAgIHNwYW5cbiAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICBmbG9hdCBsZWZ0XG4gICAgLmxlZnQ6bGlua1xuICAgIC5sZWZ0OmFjdGl2ZVxuICAgIC5sZWZ0OmZvY3VzXG4gICAgICAgc3BhblxuICAgICAgICAgY29sb3IgIzRGNEY0RlxuICAgIC5sZWZ0OmhvdmVyXG4gICAgLmxlZnQ6YWN0aXZlXG4gICAgLmxlZnQ6Zm9jdXNcbiAgICAgICBzcGFuXG4gICAgICAgICBjb2xvciAjMzMzXG4gICAgLmxlZnQ6aG92ZXJcbiAgICAgIC5sYXJnZV9xcmNvZGVcbiAgICAgICAgZGlzcGxheSBibG9ja1xuICAgIC5tb3JlX3pcbiAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgIGZsb2F0IHJpZ2h0XG4gICAgICBzcGFuXG4gICAgICAgICY6aG92ZXJcbiAgICAgICAgICBjb2xvciAjY2EwYzE2XG4gICAgYS5tb3JlOmxpbmtcbiAgICBhLm1vcmU6dmlzaXRlZFxuICAgICAgbWFyZ2luLXRvcCAtMnB4XG4gICAgICB0ZXh0LWRlY29yYXRpb24gbm9uZVxuICAgICAgY29sb3IgIzQwOTNjNlxuICAgICAgLmljb24tZXJ3ZWltYVxuICAgICAgICBjb2xvciAjNEY0RjRGXG4gICAgYS5tb3JlOmhvdmVyXG4gICAgYS5tb3JlOmFjdGl2ZVxuICAgIGEubW9yZTpmb2N1c1xuICAgICAgdGV4dC1kZWNvcmF0aW9uIG5vbmVcbiAgICAgIGNvbG9yICM0RjRGNEZcbiAgLmV4dGVuc2lvbl9vdGhlclxuICAgIG1hcmdpbi1ib3R0b20gMTRweFxuICAgIHdpZHRoIDMwMHB4XG4gIC5uZXdfY29sdW1uXG4gICAgdWxcbiAgICAgIG1hcmdpbi10b3AgNTBweFxuICAgICAgcGFkZGluZy1sZWZ0IDIwcHhcbiAgICAgIHBhZGRpbmctcmlnaHQgMjBweFxuICAgICAgcGFkZGluZy1ib3R0b20gMTBweFxuICAgICAgZGlzcGxheSBub25lXG4gICAgICBsaVxuICAgICAgICBwYWRkaW5nLWJvdHRvbSAxMHB4XG4gICAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgICB0ZXh0LW92ZXJmbG93IGVsbGlwc2lzXG4gICAgICAgIHdoaXRlLXNwYWNlIG5vd3JhcFxuICAgICAgICBhXG4gICAgICAgICAgY29sb3IgIzc1N0E3RVxuICAgICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgICAgJjpob3ZlclxuICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAuZml4UmlnaHRcbiAgICB3aWR0aDogMjk4cHhcbiAgLmV4dGVuc2lvbl9zZWxmXG4gICAgbWFyZ2luLWJvdHRvbSAyMHB4XG4gICAgaW1nXG4gICAgICB3aWR0aCAzMDBweFxuICAgICAgaGVpZ2h0IDIwMHB4XG4gIHVsLmVkdV9saVxuICAgIHBhZGRpbmctYm90dG9tIDRweFxuICAgIGxpXG4gICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgcGFkZGluZy1sZWZ0IDIwcHhcbiAgICAgIHBhZGRpbmctcmlnaHQgMjBweFxuICAgICAgbWFyZ2luLWJvdHRvbSAxMHB4XG4gICAgICBkaXZcbiAgICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgICAgaGVpZ2h0IDU4cHhcbiAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICBtYXJnaW4tcmlnaHQgMTBweFxuICAgICAgICBhXG4gICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgIHdvcmQtd3JhcCBicmVhay13b3JkXG4gICAgICAgICAgd29yZC1icmVhayBub3JtYWxcbiAgICAgICAgICBjb2xvciAjNzU3YTdlXG4gICAgICAgICAgJjpob3ZlclxuICAgICAgICAgICAgY29sb3IgI2NhMGMxNlxuICAgICAgICAgIGltZ1xuICAgICAgICAgICAgd2lkdGggODZweFxuICAgICAgICAgICAgaGVpZ2h0IDU4cHhcbiAgICAgICAgcFxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweFxuICAgICAgICBwOm50aC1jaGlsZCgyKVxuICAgICAgICAgIGNvbG9yOiAjNGY0ZjRmXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlXG4gICAgICAgICAgYm90dG9tOiAwXG4gICAgICAgICAgbGVmdDogMFxuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweFxuICAgICAgICAgIGNvbG9yOiAjNzc4MDg3XG4gICAgICAgICAgc3BhblxuICAgICAgZGl2Om50aC1jaGlsZCgyKVxuICAgICAgICB3aWR0aDogMTYwcHhcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwXG4gICAgICAgIHA6bnRoLWNoaWxkKDEpXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHhcbiAgICBkdFxuICAgICAgbWFyZ2luLWJvdHRvbSAxNXB4XG4gICAgICBmb250LXNpemUgMTRweFxuICAgICAgY29sb3IgIzMzM1xuICAgICAgbGluZS1oZWlnaHQgMjJweFxuICAgICAgdGV4dC1hbGlnbiBjZW50ZXJcbiAgLnBhZGIwXG4gICAgaDMudGl0XG4gICAgICBzcGFuXG4gICAgICAgIGVtXG4gICAgICAgICAgYm9yZGVyLWxlZnQgM3B4IHNvbGlkICNjZjI3MzBcbiAgICAgICAgICBjb2xvciAjMzMzXG4gIC5ob3N0LWNvbHVtblxuICAgIC5saXN0LWxlZnRcbiAgICAgIGZsb2F0IGxlZnRcbiAgICAubGlzdC1yaWdodFxuICAgICAgZmxvYXQgcmlnaHRcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICBwYWRkaW5nLWxlZnQgMjBweFxuICAgIHBhZGRpbmctdG9wIDE2cHhcbiAgICBwYWRkaW5nLXJpZ2h0IDIwcHhcbiAgICBtYXJnaW4tdG9wIDIwcHhcbiAgICBtYXJnaW4tYm90dG9tIDIwcHhcbiAgICBwYWRkaW5nLWJvdHRvbSAxMHB4XG4gICAgYm94LXNoYWRvdyAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuMDUpXG4gICAgaDNcbiAgICAgIGxpbmUtaGVpZ2h0IDE2cHhcbiAgICAgIHBhZGRpbmctbGVmdCA2cHhcbiAgICAgIGJvcmRlci1sZWZ0IDNweCBzb2xpZCAjQ0YyNzMwXG4gICAgICBmb250LXNpemUgMTZweFxuICAgICAgY29sb3IgIzMzM1xuICAgIHVsXG4gICAgICBtYXJnaW4tYm90dG9tIDEwcHhcbiAgICAgIGxpXG4gICAgICAgIG1hcmdpbi10b3AgMjJweFxuICAgICAgICAuaW1nXG4gICAgICAgICAgd2lkdGggNzBweFxuICAgICAgICAgIGhlaWdodCA3MHB4XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAjMDAwXG4gICAgICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgICAgICBhXG4gICAgICAgICAgICBpbWdcbiAgICAgICAgICAgICAgd2lkdGggMTAwJVxuICAgICAgICAgICAgICBoZWlnaHQgMTAwJVxuICAgICAgICAgIGRpdlxuICAgICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICAgIGJvdHRvbSAwXG4gICAgICAgICAgICBsZWZ0IDBcbiAgICAgICAgICAgIGZvbnQtc2l6ZSAxMnB4XG4gICAgICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgICAgICAgYmFja2dyb3VuZCByZ2JhKDY5LDY5LDY5LDAuODApXG4gICAgICAgICAgICBjb2xvciAjZmZmZmZmXG4gICAgICAgIC5jb250ZW50XG4gICAgICAgICAgd2lkdGggMTU5cHhcbiAgICAgICAgICBtYXJnaW4tbGVmdCAxNnB4XG4gICAgICAgICAgLnRpdGxlXG4gICAgICAgICAgICBsaW5lLWhlaWdodCAyMnB4XG4gICAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgICAgY29sb3IgIzc1N0E3RVxuICAgICAgICAgICAgYVxuICAgICAgICAgICAgICBjb2xvciAjNzU3QTdFXG4gICAgICAgICAgLm92ZXJmbG93LWhpZGUtaG9zdC1oZWlnaHRcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0IDIwcHhcbiAgICAgICAgICAgIG1heC1oZWlnaHQgNDBweFxuICAgICAgICAgIC5yZWFkXG4gICAgICAgICAgICBjb2xvciAjYmJiXG4gICAgICAgICAgICBmb250LXNpemUgMTJweFxuICAgICAgICAgICAgaVxuICAgICAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgICAgICBjb2xvciAjYmJiXG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodCA0cHhcbiAgICAgICAgICAuYXJ0aWNsZVxuICAgICAgICAgICAgd2lkdGggNjRweFxuICAgICAgICAgICAgc3BhblxuICAgICAgICAgICAgICBjb2xvciAjNzg4MDg3XG4gICAgLnVuZm9sZC1idG5cbiAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgICBmb250LXNpemUgMTJweFxuICAgICAgY29sb3IgIzlEQjJCQ1xuICAgICAgY3Vyc29yIHBvaW50ZXJcbiAgICAgIHNwYW4saVxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbiBtaWRkbGVcbiAgICAgICAgY29sb3IgIzlEQjJCQ1xuICAudXNlci1ob3RBcnRpY2xlXG4gICAgYmFja2dyb3VuZC1jb2xvciAjZmZmXG4gICAgcGFkZGluZyAyMHB4IDIwcHggNXB4IDIwcHggXG4gICAgbWFyZ2luLWJvdHRvbSAyMHB4XG4gICAgYm94LXNoYWRvdyAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuMDUpXG4gICAgaDNcbiAgICAgIGZvbnQtc2l6ZSAxNnB4XG4gICAgICBsaW5lLWhlaWdodCAxNnB4XG4gICAgICBwYWRkaW5nLWxlZnQgNnB4XG4gICAgICBib3JkZXItbGVmdCAzcHggc29saWQgI2NmMjczMFxuICAgICAgbWFyZ2luLWJvdHRvbSAyMHB4XG4gICAgICBjb2xvciAjMzMzXG4gICAgdWxcbiAgICAgIGxpXG4gICAgICAgIG1hcmdpbi1ib3R0b20gMTBweFxuICAgICAgICBhXG4gICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgICAgY29sb3IgIzc1N0E3RVxuICAgICAgICAgIGxpbmUtaGVpZ2h0IDIwcHhcbiAgICAgICAgICB0YWJsZS1sYXlvdXQgZml4ZWRcbiAgICAgICAgICB3b3JkLWJyZWFrIGJyZWFrLWFsbFxuICAgICAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgICBkaXZcbiAgICAgICAgICBmb250LXNpemUgMTJweFxuICAgICAgICAgIGksc3BhblxuICAgICAgICAgICAgY29sb3IgI2JiYlxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ24gdG9wXG4gICAgICAgICAgaVxuICAgICAgICAgICAgZm9udC1zaXplIDE0cHhcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodCA0cHhcbiAgICAgICAgLm92ZXJmbG93LWhpZGUtaG90QXJ0aWNsZS1oZWlnaHRcbiAgICAgICAgICBsaW5lLWhlaWdodCAyMHB4XG4gICAgICAgICAgbWF4LWhlaWdodCA0MHB4XG4gIC5jdXN0b21pemVcbiAgICB3aWR0aCAzMDBweFxuICAgIC51c2VyLW1vZHVsZVxuICAgICAgLy8gZGlzcGxheSBub25lXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICAgIHBhZGRpbmcgMjBweCBcbiAgICAgIG1hcmdpbi1ib3R0b20gMjBweFxuICAgICAgYm94LXNoYWRvdyAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuMDUpXG4gICAgICBoM1xuICAgICAgICBmb250LXNpemUgMTZweFxuICAgICAgICBsaW5lLWhlaWdodCAxNnB4XG4gICAgICAgIHBhZGRpbmctbGVmdCA2cHhcbiAgICAgICAgYm9yZGVyLWxlZnQgM3B4IHNvbGlkICNjZjI3MzBcbiAgICAgICAgbWFyZ2luLWJvdHRvbSAxMHB4XG4gICAgICAgIGNvbG9yICMzMzNcbiAgICAgIC5jb250ZW50XG4gICAgICAgIG1hcmdpbi10b3AgMjBweFxuICAgIC5pbWdBbmRUZXh0XG4gICAgICAuY29udGVudFxuICAgICAgICAubGVmdC1pbWdcbiAgICAgICAgICBmbG9hdCBsZWZ0XG4gICAgICAgICAgd2lkdGggMTAwcHhcbiAgICAgICAgICBoZWlnaHQgMTAwcHhcbiAgICAgICAgICBtYXJnaW4tcmlnaHQgMTBweFxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgI2YwZjBmMFxuICAgICAgICAgIGFcbiAgICAgICAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgICAgICAgIGltZ1xuICAgICAgICAgICAgICB3aWR0aCAxMDBweFxuICAgICAgICAgICAgICBoZWlnaHQgMTAwcHhcbiAgICAgICAgLnJpZ2h0LXRleHRcbiAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgIGNvbG9yICM3NTdBN0VcbiAgICAgICAgICAudGl0bGVcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgICAgICBjb2xvciAjNzU3QTdFXG4gICAgICAgICAgLnVybFxuICAgICAgICAgICAgZm9udC1zaXplIDEycHggXG4gICAgICAgICAgICBjb2xvciAjY2EwYzE2IFxuICAgICAgICAgICAgbWFyZ2luLXRvcCAyMHB4XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQgNnB4XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0IDZweFxuICAgICAgICAgICAgZGlzcGxheSBpbmxpbmUtYmxvY2tcbiAgICAgICAgICAgIGJvcmRlciAxcHggc29saWQgI2NhMGMxNlxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1cyA0cHhcbiAgICAgICAgICAgIC5vdmVyZmxvdy1oaWRlLXJpZ2h0LXRleHQtaGVpZ2h0XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0IDIycHhcbiAgICAgICAgICAgICAgbWF4LWhlaWdodCA0NHB4XG4gICAgLnRleHRcbiAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICBjb2xvciAjNzU3QTdFXG4gICAgICAuY29udGVudFxuICAgICAgICBhXG4gICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICAgICAgY29sb3IgIzc1N0E3RVxuICAgICAgICAudGV4dC1idG5cbiAgICAgICAgICBtYXJnaW4tdG9wIDEwcHhcbiAgICAgICAgICBmb250LXNpemUgMTRweFxuICAgICAgICAgIGNvbG9yICM0MDkzYzZcbiAgICAgICAgLm92ZXJmbG93LWhpZGUtdGV4dC1oZWlnaHQgIFxuICAgICAgICAgIGxpbmUtaGVpZ2h0IDIycHhcbiAgICAgICAgICBtYXgtaGVpZ2h0IDQ0cHhcbiAgICAuaW1nXG4gICAgICAuY29udGVudFxuICAgICAgICB3aWR0aCAyNjBweFxuICAgICAgICBoZWlnaHQgMjYwcHhcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvciAjZjBmMGYwXG4gICAgICAgIGFcbiAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgaW1nXG4gICAgICAgICAgICB3aWR0aCAyNjBweFxuICAgICAgICAgICAgaGVpZ2h0IDI2MHB4XG4gIC5tb2RvbmVcbiAgICAuaW1nQW5kVGV4dFxuICAgICAgZGlzcGxheSBibG9ja1xuICAubW9kdG93XG4gICAgLnRleHRcbiAgICAgIGRpc3BsYXkgYmxvY2tcbiAgLm1vZHRocmVlXG4gICAgLmltZ1xuICAgICAgZGlzcGxheSBibG9ja1xuLnJpZ2h0X2ZpeGVkXG4gIGN1cnNvciBwb2ludGVyXG4gIGRpc3BsYXkgbm9uZVxuICBwb3NpdGlvbiBmaXhlZFxuICBib3R0b20gMTAlXG4gIHJpZ2h0IDElXG4gIC5yX2ljb1xuICAgIG1hcmdpbi1ib3R0b20gMjBweFxuICAucl9pY28sLnJldHVyblRvcFxuICAgIGlcbiAgICAgIGZvbnQtc2l6ZSAxOHB4XG4gICAgICBtYXJnaW4gMCBhdXRvXG4gICAgc3BhblxuICAgICAgZm9udC1zaXplIDEycHhcbiAgICBpLHNwYW5cbiAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgICBjb2xvciAjNzg4MDg3XG4ub3ZlcmZsb3ctaGlkZVxuICBwb3NpdGlvbiByZWxhdGl2ZSBcbiAgb3ZlcmZsb3cgaGlkZGVuXG4ub3ZlcmZsb3ctaGlkZTphZnRlclxuICBjb250ZW50IFwiLi4uXCIgXG4gIHBvc2l0aW9uIGFic29sdXRlXG4gIGJvdHRvbSAwIFxuICByaWdodCAwXG4gIHBhZGRpbmctbGVmdCA0MHB4XG4gIC8vIGJhY2tncm91bmQgLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgdHJhbnNwYXJlbnQsICNmZmYgNTUlKVxuICAvLyBiYWNrZ3JvdW5kIC1vLWxpbmVhci1ncmFkaWVudChyaWdodCwgdHJhbnNwYXJlbnQsICNmZmYgNTUlKVxuICAvLyBiYWNrZ3JvdW5kIC1tb3otbGluZWFyLWdyYWRpZW50KHJpZ2h0LCB0cmFuc3BhcmVudCwgI2ZmZiA1NSUpXG4gIC8vIGJhY2tncm91bmQgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgI2ZmZiA1NSUpIiwiLmxlZnRfZml4ZWRcbiAgcG9zaXRpb24gZml4ZWRcbiAgei1pbmRleCA5OTk5XG4gIGxlZnQgMjBweFxuICB0b3AgMTUwcHhcbiAgd2lkdGggMzlweFxuICBvdmVyZmxvdyB2aXNpYmxlXG4gIGNsZWFyIGJvdGhcbiAgLmxlZnRfc2hvd19idXR0b25cbiAgICBkaXNwbGF5IG5vbmVcbiAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgIHRvcCAwXG4gICAgcmlnaHQgMFxuICAgIHdpZHRoIDEwcHhcbiAgICBoZWlnaHQgNTRweFxuICAgIHRleHQtYWxpZ24gY2VudGVyXG4gICAgYmFja2dyb3VuZC1jb2xvciAjZTNlM2UzXG4gICAgY3Vyc29yIHBvaW50ZXJcbiAgICBzcGFuXG4gICAgICBsaW5lLWhlaWdodCA1NHB4XG4gICAgICBpXG4gICAgICAgIGZvbnQtc2l6ZSAxMnB4XG4gIHVsLmxlZnRfbWVudVxuICAgIGxpXG4gICAgICBjbGVhciBib3RoXG4gICAgICBvdmVyZmxvdyB2aXNpYmxlXG4gICAgICB3aWR0aCAzOXB4XG4gICAgICBoZWlnaHQgNTBweFxuICAgICAgbWFyZ2luIDBcbiAgICAgIC5sZWZ0LWZpeGVkLWJ0blxuICAgICAgICBib3JkZXIgMFxuICAgICAgICBwYWRkaW5nIDBcbiAgICAgICAgYmFja2dyb3VuZCByZ2JhKDAsMCwwLDApXG4gICAgICAgIGhlaWdodCBhdXRvXG4gICAgICAgIHZlcnRpY2FsLWFsaWduIHRvcFxuICAgICAgICBzcGFuLmljb25ib3hcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmXG4gICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgIHdpZHRoIDM5cHhcbiAgICAgICAgICBoZWlnaHQgMzlweFxuICAgICAgICAgIGJvcmRlci1yYWRpdXMgNTAlXG4gICAgICAgICAgY2xlYXIgYm90aFxuICAgICAgICAgIGJveC1zaGFkb3c6MCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjA1KTtcbiAgICAgICAgICBpXG4gICAgICAgICAgICBmb250LXNpemUgMS43ODVyZW1cbiAgICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbiB0b3BcbiAgICAgICAgICAgIG1hcmdpbi10b3AgN3B4XG4gICAgICAgIHNwYW4uYm9yZGVyX2JsYWNrXG4gICAgICAgICAgaVxuICAgICAgICAgICAgY29sb3IgIzc4ODA4N1xuICAgICAgICBzcGFuLmJvcmRlcl9ibGFjazpob3ZlclxuICAgICAgICAgIGlcbiAgICAgICAgICAgIGNvbG9yICNkZTY4NmRcbiAgICAgICAgc3Bhbi5ib3JkZXJfcmVkXG4gICAgICAgICAgaVxuICAgICAgICAgICAgY29sb3IgI2RlNjg2ZFxuICAgICAgICBzcGFuLmJvcmRlcl9yZWQ6aG92ZXJcbiAgICAgICAgICBpXG4gICAgICAgICAgICBjb2xvciAjZGU2ODZkXG4gICAgICAgIHNwYW4uYm9yZGVyX3B1cnBsZVxuICAgICAgICAgIGlcbiAgICAgICAgICAgIGNvbG9yICM3ODgwODdcbiAgICAgICAgc3Bhbi5ib3JkZXJfcHVycGxlOmhvdmVyXG4gICAgICAgICAgaVxuICAgICAgICAgICAgY29sb3IgI2RlNjg2ZFxuICAgICAgICBzcGFuLmJvcmRlcl9vcmFuZ2VcbiAgICAgICAgICBpXG4gICAgICAgICAgICBjb2xvciAjNzg4MDg3XG4gICAgICAgIHNwYW4uYm9yZGVyX29yYW5nZTpob3ZlclxuICAgICAgICAgIGlcbiAgICAgICAgICAgIGNvbG9yICNkZTY4NmRcbiAgICAgICAgLnR4dFxuICAgICAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgICAgIGNsZWFyIGJvdGhcbiAgICAgICAgICBmb250LXNpemUgMTJweFxuICAgICAgICAgIGNvbG9yICNkZTY4NmRcbiAgICAgIGJ1dHRvbi5saWtlZFxuICAgICAgICAuYm9yZGVyX3JlZCBpXG4gICAgICAgIC5ib3JkZXJfcmVkOmhvdmVyIGlcbiAgICAgICAgICBjb2xvciAjREU2ODZEXG4gICAgLmxpa2UtYnRuLWJveFxuICAgICAgaGVpZ2h0IDcwcHhcbiAgICBsaS5tZW51X2NvblxuICAgICAgaGVpZ2h0IDBcbiAgICAgIG1hcmdpbi1ib3R0b20gMFxuICAgICAgb3ZlcmZsb3cgdmlzaWJsZVxuICAgICAgd2lkdGggMjAwcHhcbiAgICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgICAubGlzdF9mYXRoZXJcbiAgICAgICAgZGlzcGxheSBub25lXG4gICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgIHotaW5kZXggOTk5OVxuICAgICAgICBsZWZ0IDU1cHhcbiAgICAgICAgdG9wIC01NnB4XG4gICAgICAgIGJvcmRlciAxcHggI2Q1ZDVkNSBzb2xpZFxuICAgICAgICBib3JkZXItcmFkaXVzIDRweFxuICAgICAgICB3aWR0aCAyMDBweFxuICAgICAgICBoZWlnaHQgMjQ0cHhcbiAgICAgICAgcGFkZGluZyAwIDE2cHggMTBweFxuICAgICAgICBiYWNrZ3JvdW5kICNmZmZcbiAgICAgICAgLmFycl9ib3hcbiAgICAgICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICAgIHJpZ2h0IDUwJVxuICAgICAgICAgIG1hcmdpbi1yaWdodCAtMjNweFxuICAgICAgICAgIGJvdHRvbSAxMHB4XG4gICAgICAgICAgei1pbmRleCA5OTk5OVxuICAgICAgICAgIC5hcnItYnRuXG4gICAgICAgICAgICB3aWR0aCAxNnB4XG4gICAgICAgICAgICBoZWlnaHQgMTZweFxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0IDVweFxuICAgICAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzIDUwJVxuICAgICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjNzg4MDg3XG4gICAgICAgICAgICBpXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZSAxMHB4XG4gICAgICAgICAgICAgIGNvbG9yICM3ODgwODdcbiAgICAgICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodCAxNnB4XG4gICAgICAgICAgICAgIG1hcmdpbiAwXG4gICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduIHRvcFxuICAgICAgICAgICAgJjpob3ZlclxuICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2EwYzE2XG4gICAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgICBjb2xvciAjY2EwYzE2XG4gICAgICAgICAgLnNjcm9sbC11cFxuICAgICAgICAgICAgaVxuICAgICAgICAgICAgICBtYXJnaW4tbGVmdCAxcHhcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcCAtMXB4XG4gICAgICAgIC5hcnI6YmVmb3JlXG4gICAgICAgICAgY29udGVudCBcIlwiXG4gICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgICAgd2lkdGggMFxuICAgICAgICAgIGhlaWdodCAwXG4gICAgICAgICAgdG9wIDE3cHhcbiAgICAgICAgICBsZWZ0IC04cHhcbiAgICAgICAgICBib3JkZXItdG9wIDZweCBzb2xpZCB0cmFuc3BhcmVudFxuICAgICAgICAgIGJvcmRlci1ib3R0b20gNnB4IHNvbGlkIHRyYW5zcGFyZW50XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0IDhweCBzb2xpZCAjZDVkNWQ1XG4gICAgICAgIC5hcnI6YWZ0ZXJcbiAgICAgICAgICBjb250ZW50IFwiXCJcbiAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICB3aWR0aCAwXG4gICAgICAgICAgaGVpZ2h0IDBcbiAgICAgICAgICB0b3AgMTlweFxuICAgICAgICAgIGxlZnQgLTZweFxuICAgICAgICAgIGJvcmRlci10b3AgNHB4IHNvbGlkIHRyYW5zcGFyZW50XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbSA0cHggc29saWQgdHJhbnNwYXJlbnRcbiAgICAgICAgICBib3JkZXItcmlnaHQgNnB4IHNvbGlkICNmZmZcbiAgICAgICAgb2wuZmlyc3RfbGlcbiAgICAgICAgICBjbGVhciBib3RoXG4gICAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgICAgd2lkdGggMTAwJVxuICAgICAgICAgIC8vaGVpZ2h0IDE5MHB4XG4gICAgICAgICAgLy9vdmVyZmxvdy15IGF1dG9cbiAgICAgICAgICAvL21hcmdpbi10b3AgMzVweFxuICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbSAxMHB4XG4gICAgICAgICAgbGlcbiAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgIGhlaWdodCAyNHB4XG4gICAgICAgICAgICBhXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZSAxMnB4XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0IG5vcm1hbFxuICAgICAgICAgICAgICBjb2xvciAjNGY0ZjRmXG4gICAgICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWJsb2NrXG4gICAgICAgICAgICAgIHdpZHRoIDk1JVxuICAgICAgICAgICAgICBvdmVyZmxvdyBoaWRkZW5cbiAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdyBlbGxpcHNpc1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZSBub3dyYXBcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgIGE6bGlua1xuICAgICAgICAgICAgYTp2aXNpdGVkXG4gICAgICAgICAgICAgIGNvbG9yICM0ZjRmNGZcbiAgICAgICAgICAgIGE6aG92ZXJcbiAgICAgICAgICAgIGE6YWN0aXZlXG4gICAgICAgICAgICBhOmZvY3VzXG4gICAgICAgICAgICAgIGNvbG9yICNDOTIwMjdcbiAgICAgICAgICBvbC5zZWNvbmRfbGlcbiAgICAgICAgICAgIGNsZWFyIGJvdGhcbiAgICAgICAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0IDIwcHhcbiAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgZm9udC1zaXplIDEycHhcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQgbm9ybWFsXG4gICAgICAgICAgICAgIGNvbG9yICM0MzQzNDNcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbSAycHhcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgIGE6bGlua1xuICAgICAgICAgICAgYTp2aXNpdGVkXG4gICAgICAgICAgICAgIGNvbG9yICM0MzQzNDNcbiAgICAgICAgICAgIGE6aG92ZXJcbiAgICAgICAgICAgIGE6YWN0aXZlXG4gICAgICAgICAgICBhOmZvY3VzXG4gICAgICAgICAgICAgIGNvbG9yICNDOTIwMjdcbiAgICAgICNjc2RuQmxvZ0RpclxuICAgICAgICBoZWlnaHQgMTkwcHhcbiAgICAgICAgbWFyZ2luLXRvcCAxMnB4XG4gICAgICAgIG1hcmdpbi1ib3R0b20gMTBweFxuICAgICAgICBvdmVyZmxvdy15IGF1dG9cbiAgICAgICAgb3ZlcmZsb3cteCBoaWRkZW5cbiAgICAgICNjc2RuQmxvZ0Rpcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2tcbiAgICAgICAgYm9yZGVyLXJhZGl1cyA1cHhcbiAgICAgICNjc2RuQmxvZ0Rpcjo6LXdlYmtpdC1zY3JvbGxiYXJcbiAgICAgICAgd2lkdGggMHB4XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjIwLDIyMCwyMjAsLjUpXG4gICAgICAgIGJvcmRlci1yYWRpdXMgNXB4XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgcmdiYSgwLDAsMCwwKTtcbiAgICAgICNjc2RuQmxvZ0Rpcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjAsMjIwLDIyMCwuNSlcbiAgICAgICAgYm9yZGVyLXJhZGl1cyA1cHhcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZ2JhKDAsMCwwLDApO1xuICAgIGxpI3NoYXJlX2JveFxuICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgIHotaW5kZXggMVxuICAgICAgLmJkc2hhcmVidXR0b25ib3hcbiAgICAgICAgZGlzcGxheSBub25lXG4gICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgIGxlZnQgMFxuICAgICAgICB0b3AgNDJweFxuICAgICAgICB3aWR0aCAzOXB4XG4gICAgICAgIGhlaWdodCAxNjVweFxuICAgICAgICAub3V0c2lkZVxuICAgICAgICAgIHdpZHRoIDM5cHhcbiAgICAgICAgICBoZWlnaHQgNDJweFxuICAgICAgICAgIG1hcmdpbiAwXG4gICAgICAgICAgbWFyZ2luLXRvcCA4cHhcbiAgICAgICAgICBmbG9hdCBsZWZ0XG4gICAgICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgICAgICBhXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIHJnYmEoMCwwLDAsMClcbiAgICAgICAgICAgIHBhZGRpbmcgMFxuICAgICAgICAgICAgbWFyZ2luIDBcbiAgICAgICAgICAgIGhlaWdodCA0MHB4XG4gICAgICAgICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICAgICAgd2lkdGggMzlweFxuICAgICAgICAgICAgei1pbmRleCA5OTk5XG4gICAgICAgICAgICB0b3AgMFxuICAgICAgICAgICAgbGVmdCAwXG4gICAgICAgICAgc3Bhbi50ZXh0XG4gICAgICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICAgICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgICAgICAgbWFyZ2luLXRvcCAwXG4gICAgICAgICAgICBmb250LXNpemUgMTJweFxuICAgICAgICAgICAgY29sb3IgIzg4OFxuICAgICAgICAgIHNwYW4uaWNvbmJveFxuICAgICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgICAgd2lkdGggMzlweFxuICAgICAgICAgICAgaGVpZ2h0IDM5cHhcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0IDIycHhcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXMgNTAlXG4gICAgICAgICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgICAgICAgY2xlYXIgYm90aFxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAjZmZmXG4gICAgICAgICAgICBpXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZSAxLjc4NXJlbVxuICAgICAgICAgICAgICBkaXNwbGF5IGlubGluZS1ibG9ja1xuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbiB0b3BcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcCA3cHhcbiAgICAgICAgICBzcGFuLmJvcmRlcl9yZWQyXG4gICAgICAgICAgICAvLyBib3JkZXIgMXB4IHNvbGlkICNlMjUxM2ZcbiAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgY29sb3IgIzc4OTA5Y1xuICAgICAgICAgIHNwYW4uYm9yZGVyX2dyZWVuXG4gICAgICAgICAgICAvLyBib3JkZXIgMXB4IHNvbGlkICMwMGJkMTdcbiAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgY29sb3IgIzc4OTA5Y1xuICAgICAgICAgIHNwYW4uYm9yZGVyX2JsdWVcbiAgICAgICAgICAgIC8vIGJvcmRlciAxcHggc29saWQgIzRjYWZlYlxuICAgICAgICAgICAgaVxuICAgICAgICAgICAgICBjb2xvciAjNzg5MDljXG4gICAgICAgIC5vdXRzaWRlOmhvdmVyXG4gICAgICAgICAgc3Bhbi5ib3JkZXJfcmVkMlxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZCAjZTI1MTNmXG4gICAgICAgICAgICAvLyBib3JkZXIgc29saWQgMXB4ICNlMjUxM2ZcbiAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgY29sb3IgI2UyNTEzZlxuICAgICAgICAgIHNwYW4uYm9yZGVyX2dyZWVuXG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kICMwMGJkMTdcbiAgICAgICAgICAgIGlcbiAgICAgICAgICAgICAgY29sb3IgIzAwYmQxN1xuICAgICAgICAgIHNwYW4uYm9yZGVyX2JsdWVcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQgIzRjYWZlYlxuICAgICAgICAgICAgaVxuICAgICAgICAgICAgICBjb2xvciAjNGNhZmViXG4gICAgbGkjc2hhcmVfYm94OmhvdmVyXG4gICAgICAuYmRzaGFyZWJ1dHRvbmJveFxuICAgICAgICBkaXNwbGF5IGJsb2NrXG4gICAgJiBsaTpmaXJzdC1jaGlsZFxuICAgICAgaGVpZ2h0IDcwcHhcbiAgdWwuYnlfbGVmdFxuICAgIGxpXG4gICAgICBoZWlnaHQgNDBweFxuICAgICAgYm9yZGVyLXRvcCAxcHggc29saWQgI2UzZTNlM1xuICAgICAgLmxlZnQtZml4ZWQtYnRuIFxuICAgICAgICBzcGFuLmljb25ib3hcbiAgICAgICAgICBib3JkZXItcmFkaXVzIDBcbiAgICAubGlrZS1idG4tYm94XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICAubWVudV9jb25cbiAgICAgIGJvcmRlciBub25lXG4gICAgJiBsaTpmaXJzdC1jaGlsZFxuICAgICAgaGVpZ2h0IDUycHhcbiAgICAgIC50eHRcbiAgICAgICAgbWFyZ2luLXRvcCAtMTJweFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICNmZmZcbiAgICBsaSNzaGFyZV9ib3ggXG4gICAgICAuYmRzaGFyZWJ1dHRvbmJveCBcbiAgICAgICAgdG9wIDM5cHhcbiAgICAgICAgLm91dHNpZGUgXG4gICAgICAgICAgbWFyZ2luLXRvcCAwXG4gICAgICAgICAgaGVpZ2h0OiAzOXB4XG4gICAgICAgICAgc3Bhbi5pY29uYm94XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzIDBcbi5sZWZ0X2ZpeGVkXG4gIHVsLmxlZnRfbWVudVxuICAgIGxpLnNtYWxsU2hvd1xuICAgICAgLmxpc3RfZmF0aGVyXG4gICAgICAgIGRpc3BsYXkgYmxvY2siLCIucG9wX0NBX2NvdmVyXG4gIGRpc3BsYXkgbm9uZVxuICBwb3NpdGlvbiBmaXhlZFxuICBsZWZ0IDBcbiAgdG9wIDBcbiAgd2lkdGggMTAwJVxuICBoZWlnaHQgMTAwJVxuICBiYWNrZ3JvdW5kIHJnYmEoMCwwLDAsLjMpXG4gIHotaW5kZXggOTk5OTk5XG5cbi5wb3BfQ0FcbiAgZGlzcGxheSBub25lXG4gIHBvc2l0aW9uIGZpeGVkXG4gIGxlZnQgNTAlXG4gIHRvcCA1MCVcbiAgbWFyZ2luLWxlZnQgLTMyNXB4XG4gIG1hcmdpbi10b3AgLTE3OXB4XG4gIHdpZHRoIDY1MHB4XG4gIGJhY2tncm91bmQ6ICNmZmZcbiAgYm9yZGVyIHNvbGlkIDFweCAjY2VjZWNlXG4gIGJveC1zaGFkb3cgMCAwIDEwcHggMCAjY2VjZWNlXG4gIHotaW5kZXggOTk5OTk5OVxuICAuQ0FfaGVhZGVyXG4gICAgaGVpZ2h0IDUwcHhcbiAgICBsaW5lLWhlaWdodCA1MHB4XG4gICAgcGFkZGluZyAwIDIwcHhcbiAgICBib3JkZXItYm90dG9tIHNvbGlkIDFweCAjY2VjZWNlXG4gICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICB0ZXh0LWFsaWduIGxlZnRcbiAgICBmb250LXNpemUgMTZweFxuICAgIGNvbG9yICMzMzNcbiAgICAuY2FuY2VsX2ljb25cbiAgICAgIGRpc3BsYXkgYmxvY2tcbiAgICAgIHdpZHRoIDE1cHhcbiAgICAgIGhlaWdodCAxNXB4XG4gICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgcmlnaHQgMTZweFxuICAgICAgdG9wIDE4cHhcbiAgICAgIGJhY2tncm91bmQgdXJsKGh0dHA6Ly9zdGF0aWMuYmxvZy5jc2RuLm5ldC9pbWFnZXMvY2FuY2VsX2ljb24ucG5nKSBjZW50ZXIgbm8tcmVwZWF0XG4gICAgICBjdXJzb3IgcG9pbnRlclxuXG5cbi8qcmVwb3J0Ki9cbiNyZXBvcnRfZGlhbG9nXG4gIGRpc3BsYXkgbm9uZVxuICBwb3NpdGlvbiBmaXhlZFxuICBsZWZ0IDMwJVxuICByaWdodCAzMyVcbiAgdG9wIDMzJVxuICB6LWluZGV4IDk5OTk5OVxuLnBhbmVsX2hlYWRcbiAgY29sb3IgIzMzM1xuICBmb250LXNpemUgMTRweFxuICBmb250LXdlaWdodCBib2xkXG5cblxuI3BhbmVsX3JlcG9ydFxuICBiYWNrZ3JvdW5kOiNmZmY7IGJvcmRlcjogc29saWQgMXB4ICNEREQ7IHdpZHRoOjQ0MHB4OyBwYWRkaW5nOjhweCA4cHggMjBweCA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjVweDtcbiNwYW5lbF9yZXBvcnQgLnBvcF90YWJsZVxuICBsaW5lLWhlaWdodCAyMHB4XG4gIG1hcmdpbiAxMHB4IDAgMCAxMnB4XG4jcGFuZWxfcmVwb3J0IHRoLCNwYW5lbF9yZXBvcnQgdGRcbiAgcGFkZGluZyA0cHggMFxuICB2ZXJ0aWNhbC1hbGlnbiB0b3BcbiAgZm9udC1zaXplIDEycHhcbiAgY29sb3IgIzY2NlxuI3BhbmVsX3JlcG9ydCB0aFxuICB0ZXh0LWFsaWduIHJpZ2h0XG4gIGZvbnQtd2VpZ2h0IG5vcm1hbFxuI3BhbmVsX3JlcG9ydCBoM1xuICBsaW5lLWhlaWdodCA2MHB4XG4jcmVwb3J0X290aGVyX2NvbnRlbnRcbiAgaGVpZ2h0IDE2cHhcbiAgcGFkZGluZyAwcHhcbiAgYm9yZGVyIHNvbGlkIDFweCAjOTk5XG4jYnRuU3VibWl0UmVwb3J0XG4gIGJvcmRlciAwcHhcblxuXG4ucG9wX3RhYmxlXG4gIHRkXG4gICAgZm9udC1zaXplIDEycHhcbiAgICBjb2xvciAjNjY2XG4gICAgYVxuICAgICAgY29sb3IgIzZhMzkwNlxuICAgIGxhYmVsXG4gICAgICBmb250LXdlaWdodCBub3JtYWxcbiAgICB0ZXh0YXJlYVxuICAgICAgYm9yZGVyIHNvbGlkIDFweCAjZGRkXG4gICAgI2J0bkNsb3NlUmVwb3J0RGlhbG9nLCNidG5TdWJtaXRSZXBvcnRcbiAgICAgIHZlcnRpY2FsLWFsaWduIG1pZGRsZVxuXG4vKnNoYXJlIHdlaXhpbiovXG4jYmRzaGFyZV93ZWl4aW5fcXJjb2RlX2RpYWxvZ1xuICBoZWlnaHQgMzQ4cHghaW1wb3J0YW50XG5cbi5iZHNfdHNpbmFcbiAgYmFja2dyb3VuZC1jb2xvciByZWRcbiIsIm5hdlxuICBmb250LXNpemUgMTZweFxuICBmb250LXdlaWdodCBub3JtYWxcbiAgY29sb3IgI0FCQjBCNFxuICBoZWlnaHQgNzBweFxuICBiYWNrZ3JvdW5kICNGRkZGRkZcbiAgYm9yZGVyLXRvcCAxcHggc29saWQgI0U0RUJGNFxuICBib3JkZXItYm90dG9tIDFweCBzb2xpZCAjRTRFQkY0XG4gIG1hcmdpbi1ib3R0b20gMjBweFxuICBkaXNwbGF5IG5vbmVcbiAgLmNvbnRhaW5lclxuICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgcGFkZGluZyAwXG4gIGgxXG4gICAgZmxvYXQgbGVmdFxuICAgIG1hcmdpbiAxMXB4IDAgMjZweCAxNnB4XG4gIC5uYXZfY29tXG4gICAgaGVpZ2h0IDQ1cHhcbiAgICBtYXJnaW4gMTBweCAwIDAgMTBweFxuICAgIHBhZGRpbmcgMTJweCAxNXB4IDE2cHggMFxuICAgIG92ZXJmbG93IGhpZGRlblxuICAgIGZsb2F0IGxlZnRcbiAgICBiYWNrZ3JvdW5kICNmZmZcbiAgICBtaW4td2lkdGggNzMycHhcbiAgICBib3JkZXIgMXB4IHNvbGlkIHJnYmEoMCwwLDAsMClcbiAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgIGxlZnQgMTA1cHhcbiAgICB6LWluZGV4IDk5OVxuICAgIHVsXG4gICAgICBmbG9hdCBsZWZ0XG4gICAgICB3aWR0aCA2NzBweFxuICAgICAgbGlcbiAgICAgICAgZmxvYXQgbGVmdFxuICAgICAgICBtYXJnaW4gMCAxNHB4IDEwcHhcbiAgICAgICAgaGVpZ2h0IDMwcHhcbiAgICAgICAgb3ZlcmZsb3cgaGlkZGVuXG4gICAgICAgIHBhZGRpbmctYm90dG9tIDJweFxuICAgICAgICBhXG4gICAgICAgICAgY29sb3IgIzIzMTkxNiAgIFxuICAgICAgICAgIGZvbnQtd2VpZ2h0IDIwMHB4XG4gICAgICAgICAgJjpsaW5rXG4gICAgICAgICAgJjp2aXNpdGVkXG4gICAgICAgICAgICBmb250LXdlaWdodCBub3JtYWxcbiAgICAgICAgICAmOmhvdmVyXG4gICAgICAgICAgJjphY3RpdmVcbiAgICAgICAgICAgIGNvbG9yICNDQTBDMTZcbiAgICAgICAgJi5hY3RpdmVcbiAgICAgICAgICBib3JkZXItYm90dG9tIDRweCBzb2xpZCAjQ0EwQzE2O1xuICAgICAgICAgIGFcbiAgICAgICAgICAgIGNvbG9yICMyMzE5MTZcbiAgICAuYWxsX25hdlxuICAgICAgZmxvYXQgbGVmdFxuICAgICAgZm9udC1zaXplIDE2cHhcbiAgICAgIGNvbG9yICMyMzE5MTZcbiAgICAgIGN1cnNvciBwb2ludGVyXG4gIC5zZWFyY2hfYmFyXG4gICAgZmxvYXQgcmlnaHRcbiAgICBiYWNrZ3JvdW5kICNGRkZGRkZcbiAgICB3aWR0aCAzMDBweFxuICAgIGhlaWdodCAzNnB4XG4gICAgYm9yZGVyIDFweCBzb2xpZCAjZGRkXG4gICAgYm9yZGVyLXJhZGl1cyA0cHhcbiAgICBtYXJnaW4tdG9wIDE3cHhcbiAgICBtYXJnaW4tcmlnaHQgMTVweFxuICAgIGlucHV0LmlucF9zZWFyY2hcbiAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICBjb2xvciAjNzc4MDg3XG4gICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICBmbG9hdCBsZWZ0XG4gICAgICB3aWR0aCAyNjJweFxuICAgICAgcGFkZGluZyA1cHggMTBweFxuICAgICAgYm9yZGVyIDBcbiAgICAgIGhlaWdodCAzNHB4XG4gICAgLmljb19zZWFyY2hcbiAgICAgIGJhY2tncm91bmQtY29sb3IgcmdiYSgwLDAsMCwwKVxuICAgICAgY29sb3IgIzhlOGU4ZVxuICAgICAgcGFkZGluZyAwIDEwcHhcbiAgICAgIGZvbnQtc2l6ZSAxNHB4XG4gICAgICBkaXNwbGF5IGJsb2NrXG4gICAgICB0ZXh0LWFsaWduIGNlbnRlclxuICAgICAgd2lkdGggMzRweFxuICAgICAgaGVpZ2h0IDM0cHhcbiAgICAgIGZsb2F0IGxlZnRcbiAgICAgIGxpbmUtaGVpZ2h0IDM0cHhcbiAgICAgIGkuaWNvbmZvbnRcbiAgICAgICAgY29sb3IgIzhlOGU4ZVxuQG1lZGlhKG1pbi13aWR0aDoxMjgwcHgpXG4gIG5hdlxuICAgIGRpc3BsYXkgYmxvY2sgIFxuICAgICAgICAgICAgICIsIi5kcC1oaWdobGlnaHRlciwucHJldHR5cHJpbnR7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIG92ZXJmbG93LXg6YXV0bztcbn1cbi5wYWRfYm90e1xuICAgIHBhZGRpbmctYm90dG9tOjQ1cHghaW1wb3J0YW50O1xufVxuLnNhdmVfY29kZXtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvKndpZHRoOiAxMDVweDsqL1xuICAgIGhlaWdodDo2MHB4O1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIHRvcDo1cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiNmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6Mjtcbn1cblxuI21hc2tfY29kZXtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMyk7XG4gICAgei1pbmRleDo5OTA7XG59XG5cbi8qLmdpc3RfZWRpdHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDo1MCU7XG4gICAgdG9wOjUwJTtcbiAgICB3aWR0aDogNTA1cHg7XG4gICAgaGVpZ2h0OiAzMzBweDtcbiAgICBtYXJnaW46IC0xNjVweCAwIDAgLTI1MnB4O1xuICAgIHotaW5kZXg6IDk5OTk7XG59Ki9cblxuLmdpc3RfZWRpdHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OjUwJTtcbiAgdG9wOjUwJTtcbiAgd2lkdGg6IDUwNXB4O1xuICBoZWlnaHQ6IDMzMHB4O1xuICAgIC8qbWFyZ2luOiBhdXRvO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpOyovXG4gIG1hcmdpbjogLTE2NXB4IDAgMCAtMjUycHg7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbi5zYXZlX3NuaXBwZXRzIHtcblxuICAgIGNsZWFyOiBib3RoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkY2RkO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LWZhbWlseTogXCJNaWNyb3NvZnQgWWFIZWlcIjtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG59XG4uc2F2ZV9zbmlwcGV0cyAudGl0IHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogNDVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGNkZDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgYm94LXNpemluZzpib3JkZXItYm94O1xufVxuLnNhdmVfc25pcHBldHMgLnRpdCBoMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbn1cblxuLmdpc3RfZWRpdF9saXN0e1xuICAgIHBhZGRpbmc6MDtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG4gICAgd2lkdGg6MTAwJTtcbn1cbi5zYXZlX3NuaXBwZXRzIC50aXQgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG59XG4uc2F2ZV9zbmlwcGV0cyAudGl0IHNwYW4gYSB7XG4gICAgY29sb3I6ICMwMDAwZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uc2F2ZV9zbmlwcGV0cyAudGl0IHNwYW4gYTpsaW5rLCAuc2F2ZV9zbmlwcGV0cyAudGl0IHNwYW4gYTp2aXNpdGVkLCAuc2F2ZV9zbmlwcGV0cyAudGl0IHNwYW4gYTpob3ZlciwgLnNhdmVfc25pcHBldHMgLnRpdCBzcGFuIGE6YWN0aXZlIHtcbiAgICBjb2xvcjogIzAwMDBmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5zYXZlX3NuaXBwZXRzIC5jb25fZm9ybSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG59XG4uc2F2ZV9zbmlwcGV0cyAuY29uX2Zvcm0gLmdpc3RfZWRpdF9saXN0IGxpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbn1cbi5zYXZlX3NuaXBwZXRzIC5jb25fZm9ybSAuZ2lzdF9lZGl0X2xpc3QgbGkgc3Bhbi5yZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAzNnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBjb2xvcjogI2YwMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbn1cbi5zYXZlX3NuaXBwZXRzIC5jb25fZm9ybSAuZ2lzdF9lZGl0X2xpc3QgbGkgc3Bhbi50eHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xufVxuLnNhdmVfc25pcHBldHMgLmNvbl9mb3JtIC5naXN0X2VkaXRfbGlzdCBsaSAuZm9ybS1pbnB1dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDM5OHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkY2RkO1xuICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGZvbnQtZmFtaWx5OiBcIk1pY3Jvc29mdCBZYUhlaVwiO1xuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbn1cbiNkaXZTZWFyY2hUYWdze1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgd2lkdGg6IDM5OHB4O1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGZvbnQtZmFtaWx5OiBcIk1pY3Jvc29mdCBZYUhlaVwiO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGRjZGQ7XG4gICAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6MnB4O1xuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG59XG4jZGl2U2VhcmNoVGFncyAubGFiZWwgc3BhbntcbiAgICBjb2xvcjojNjY2O1xufVxuLmluc2VydFRhZ3tcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6MjA4cHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6bm9uZTtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG59XG4jZGl2U2VhcmNoVGFncyAuYmxvZ190YWd7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBtYXJnaW46N3B4IDEwcHggN3B4IDA7XG4gICAgcGFkZGluZzowIDVweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjNmM2YzO1xuICAgIGNvbG9yOiM2NjY7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG59XG4jZGl2U2VhcmNoVGFncyAuYmxvZ190YWcgc3BhbntcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbn1cbiNkaXZTZWFyY2hUYWdzIC5sYWJlbCBhe1xuICAgIGNvbG9yOiM2NjY7XG4gICAgbWFyZ2luLWxlZnQ6OHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uc2F2ZV9zbmlwcGV0cyAuY29uX2Zvcm0gLmdpc3RfZWRpdF9saXN0IGxpIC5mb3JtLXRleHRhcmVhIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzk4cHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkY2RkO1xuICAgIGJhY2tncm91bmQ6ICNmYWZhZmE7XG4gICAgcGFkZGluZzogM3B4IDEwcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgZm9udC1mYW1pbHk6IFwiTWljcm9zb2Z0IFlhSGVpXCI7XG4gICAgYm94LXNpemluZzpib3JkZXItYm94O1xufVxuLnNhdmVfc25pcHBldHMgLmJvdHRvbS1iYXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGRjZGQ7XG4gICAgcGFkZGluZzogMTdweCAyMHB4O1xufVxuLnNhdmVfc25pcHBldHMgLmJvdHRvbS1iYXIgLmJ0bi1zdWJtaXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ODg7XG4gICAgYmFja2dyb3VuZDogI2YwZjBmMDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LWZhbWlseTogXCJNaWNyb3NvZnQgWWFIZWlcIjtcbiAgICBjb2xvcjogIzMzMztcbn1cblxuXG4vKmNvZGXku6PnoIHooYzlj7fplJnkvY0qL1xuLmZpbGVfaG9sZGVyIC5maWxlX2NvbnRlbnQuY29kZSB0YWJsZS5saW5lcyBwcmUubGluZV9udW1iZXJze1xuICAgIHdpZHRoOjQwcHghaW1wb3J0YW50O1xufSJdfQ== */
</style>
    <style data-savepage-href="http://c.csdnimg.cn/public/common/toolbar/content_toolbar_css/content_toolbar.css">
@font-face {font-family: "iconfont-toolbar";
  src: /*savepage-url=http://c.csdnimg.cn/cdn/content-toolbar/iconfont.eot?t=1509003158575*/ url(); /* IE9*/
  src: /*savepage-url=http://c.csdnimg.cn/cdn/content-toolbar/iconfont.eot?t=1509003158575#iefix*/ url() format('embedded-opentype'), /* IE6-IE8 */
  /*savepage-url=http://c.csdnimg.cn/cdn/content-toolbar/iconfont.ttf?t=1509003158575*/ url(data:application/octet-stream;resource=9;base64,) format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
  /*savepage-url=http://c.csdnimg.cn/cdn/content-toolbar/iconfont.svg?t=1509003158575#iconfont*/ url() format('svg'); /* iOS 4.1- */
}

.iconfont-toolbar {
  font-family:"iconfont-toolbar" !important;
  font-size:16px;
  font-style:normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.toolbar-xiajiantou:before { content: "\e843"; }

.toolbar-shouji:before { content: "\e844"; }

.toolbar-tianxie:before { content: "\e845"; }

.toolbar-sousuo:before { content: "\e846"; }

.toolbar-guanbi:before { content: "\e847"; }

.toolbar-caidan:before { content: "\e848"; }

.toolbar-yonghudenglu:before { content: "\e849"; }

.toolbar-csdnlogo:before { content: "\e855"; }

.toolbar-morentouxiang:before { content: "\e87e"; }

.toolbar-icon_boke:before { content: "\e880"; }

.toolbar-icon_gitchatx:before { content: "\e881"; }

.toolbar-guanbi1:before { content: "\e882"; }

.csdn-toolbar {
  font-size: 12px;
  padding: 0;
  color: #999;
  font-family: "Helvetica", "Tahoma, Arial", "sans-serif";
  font-size: 0.75em;
  color: #333;
  line-height: 1.5em;
  background:#ffffff;
  box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);
  height:60px;
}
.csdn-toolbar *,
.csdn-toolbar *:before,
.csdn-toolbar *:after {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.csdn-toolbar div,
.csdn-toolbar dl,
.csdn-toolbar dt,
.csdn-toolbar dd,
.csdn-toolbar ul,
.csdn-toolbar li,
.csdn-toolbar h1,
.csdn-toolbar h2,
.csdn-toolbar h3,
.csdn-toolbar h4,
.csdn-toolbar h5,
.csdn-toolbar h6,
.csdn-toolbar pre,
.csdn-toolbar code,
.csdn-toolbar form,
.csdn-toolbar fieldset,
.csdn-toolbar legend,
.csdn-toolbar input,
.csdn-toolbar textarea,
.csdn-toolbar p,
.csdn-toolbar blockquote,
.csdn-toolbar th,
.csdn-toolbar td {
  margin: 0;
  padding: 0;
  line-height: 1.5em;
  text-align: left;
}
.csdn-toolbar table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}
.csdn-toolbar fieldset,
.csdn-toolbar img {
  border: 0;
}
.csdn-toolbar address,
.csdn-toolbar caption,
.csdn-toolbar cite,
.csdn-toolbar code,
.csdn-toolbar dfn,
.csdn-toolbar em,
.csdn-toolbar strong,
.csdn-toolbar th,
.csdn-toolbar var {
  font-style: normal;
  font-weight: normal;
}
.csdn-toolbar ul {
  list-style: none;
}
.csdn-toolbar caption,
.csdn-toolbar th {
  text-align: left;
}
.csdn-toolbar .clearfix:before,
.csdn-toolbar .clearfix:after {
  content: " ";
  display: table;
}
.csdn-toolbar .clearfix:after {
  clear: both;
}
.csdn-toolbar .clearfix {
  overflow: visible;
}
.csdn-toolbar .col-sm-2 {
  float: left;
}
.csdn-toolbar h1,
.csdn-toolbar h2,
.csdn-toolbar h3,
.csdn-toolbar h4,
.csdn-toolbar h5,
.csdn-toolbar h6 {
  font-family: "Helvetica", "Tahoma, Arial", "sans-serif";
  font-weight: bold;
  line-height: 1.5em;
  color: #333;
  background: none;
  margin: 0;
  text-align: left;
}
.csdn-toolbar h1 {
  font-size: 3em;
}
.csdn-toolbar h2 {
  font-size: 2.5em;
}
.csdn-toolbar h3 {
  font-size: 2em;
}
.csdn-toolbar h4 {
  font-size: 1.5em;
}
.csdn-toolbar h5 {
  font-size: 1.166666666em;
}
.csdn-toolbar h6 {
  font-size: 1em;
}
.csdn-toolbar textarea {
  resize: none;
}
.csdn-toolbar a:link,
.csdn-toolbar a:visited {
  color: #333;
  text-decoration: none;
}
.csdn-toolbar a:hover {
  color: #c00;
  text-decoration: none;
}
.csdn-toolbar h1 a:link,
.csdn-toolbar h1 a:visited,
.csdn-toolbar h2 a:link,
.csdn-toolbar h2 a:visited,
.csdn-toolbar h3 a:link,
.csdn-toolbar h3 a:visited,
.csdn-toolbar h4 a:link,
.csdn-toolbar h4 a:visited,
.csdn-toolbar h5 a:link,
.csdn-toolbar h5 a:visited,
.csdn-toolbar h6 a:link,
.csdn-toolbar h6 a:visited {
  color: #333;
}
.csdn-toolbar h1 a:hover,
.csdn-toolbar h2 a:hover,
.csdn-toolbar h3 a:hover,
.csdn-toolbar h4 a:hover,
.csdn-toolbar h5 a:hover,
.csdn-toolbar h6 a:hover {
  color: #c00;
}
.csdn-toolbar a:focus {
  outline: none;
}
.csdn-toolbar a.f-blue:link,
.csdn-toolbar a.f-blue:visited {
  color: #2981a9;
  text-decoration: none;
}
.csdn-toolbar a.f-blue:visited {
  color: #025d87;
  text-decoration: none;
}
.csdn-toolbar a.f-undline:link,
.csdn-toolbar a.f-undline:visited {
  text-decoration: underline;
}
.csdn-toolbar a.f-undline:visited {
  text-decoration: underline;
}
.csdn-toolbar .col-sm-1,
.csdn-toolbar .col-sm-2,
.csdn-toolbar .col-sm-3,
.csdn-toolbar .col-sm-4,
.csdn-toolbar .col-sm-5,
.csdn-toolbar .col-sm-6,
.csdn-toolbar .col-sm-7,
.csdn-toolbar .col-sm-8,
.csdn-toolbar .col-sm-9,
.csdn-toolbar .col-sm-10,
.csdn-toolbar .col-sm-11 {
  float: left;
}
.csdn-toolbar .form-horizontal .form-group:after {
  clear: both;
}
.csdn-toolbar .form-horizontal .form-group:before,
.csdn-toolbar .form-horizontal .form-group:after {
  content: " ";
  display: table;
}
.csdn-toolbar .col-sm-12 {
  width: 100%;
}
.csdn-toolbar .col-sm-11 {
  width: 91.6667%;
}
.csdn-toolbar .col-sm-10 {
  width: 86.3333%;
}
.csdn-toolbar .col-sm-9 {
  width: 75%;
}
.csdn-toolbar .col-sm-8 {
  width: 66.6667%;
}
.csdn-toolbar .col-sm-7 {
  width: 58.3333%;
}
.csdn-toolbar .col-sm-6 {
  width: 50%;
}
.csdn-toolbar .col-sm-5 {
  width: 41.6667%;
}
.csdn-toolbar .col-sm-4 {
  width: 33.3333%;
}
.csdn-toolbar .col-sm-3 {
  width: 25%;
}
.csdn-toolbar .col-sm-2 {
  width: 16.6667%;
}
.csdn-toolbar .col-sm-1 {
  width: 8.33333%;
}
.csdn-toolbar .pull-left {
  float: left;
}
.csdn-toolbar .pull-right {
  float: right;
  margin-right: -8px;
}
.csdn-toolbar a {
  color: #999;
  text-decoration: none;
  font-size: 12px;
  font-weight: normal;
}
.csdn-toolbar a:hover {
  color: #333;
}
.csdn-toolbar dl {
  margin: 0;
  font-size: 12px;
}
.csdn-toolbar ul,
.csdn-toolbar li {
  margin: 0;
  padding: 0;
}
.csdn-toolbar li {
  list-style: none;
  float: left;
  height: 40px;
  width: 40px;
  border: 1px solid #eee;
  border-width: 0 1px 0 1px;
  border-right-color: #fff;
  position: relative;
  background: none;
}
.csdn-toolbar .hide {
  display: none;
}
.csdn-toolbar .open .dropdown-menu {
  display: block;
  min-width: 70px;
  border-radius: 0;
  top: 23px;
}
.csdn-toolbar .open .dropdown-menu li {
  width: 100%;
  float: left;
  height: auto;
  border: 0 none;
  text-align: center;
  color: #333;
  padding-right: 10px;
}
.csdn-toolbar input:focus,
.csdn-toolbar textarea:focus {
  border-color: #9cf;
  box-shadow: none;
}
.csdn-toolbar .form-horizontal .form-group {
  margin: 0 0 10px 0;
}
.csdn-toolbar .form-horizontal .form-group .ft {
  margin-left: 25px;
  padding-left: 12px;
  width: 362px;
}
.csdn-toolbar .form-horizontal .control-label {
  padding: 7px 10px 0 0;
  width: 48px;
  text-align: right;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.csdn-toolbar .form-horizontal .control-label .red_txt{
  color:#f00;
  padding-right:3px;
}
.csdn-toolbar .form-control {
  display: block;
  width: 336px;
  border-radius: 0;
  height: 28px;
  padding: 0px 7px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555;
  vertical-align: middle;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
  box-shadow: none;
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.csdn-toolbar textarea.form-control {
  height: 70px;
  padding-top: 5px;
}
.csdn-toolbar .nobg {
  background: none !important;
}
.csdn-toolbar .icon-hasnotes-sm,
.csdn-toolbar .icon-enter-sm,
.csdn-toolbar .write-icon {
  background-image: /*savepage-url=http://c.csdnimg.cn/public/common/toolbar/images/f_icon.png*/ url(data:image/png;resource=12;base64,);
}
.csdn-toolbar .icon-enter-sm {
  background-position: 0px -192px;
}

.csdn-toolbar .icon .wrap {
  font-size: 12px;
  display: none;
  background: #fff;
  border: 1px solid #ccc;
  padding: 7px;
  position: absolute;
  top: 30px;
  box-shadow: 0px 3px 2px rgba(0,0,0,0.15);
}
.csdn-toolbar .icon .curr-icon-wrap {
  border-bottom: 1px solid #fff;
  height: 3px;
  position: absolute;
  top: -4px;
  width: 41px;
}

body .csdn-toolbar .container {
  width: 1130px;
  margin: 0 auto;
}
body .csdn-toolbar .container .left-menu{
  margin-left: -20px;
}

.csdn-toolbar .container:before,
.csdn-toolbar .container:after {
  content: " ";
  display: table;
}
.csdn-toolbar .container  li{
  border-left: none;
  border-right: none;
  width: auto;
  -webkit-transition: background-color 1s;
          transition: background-color 1s;
} 
.csdn-toolbar .container .pull-right li a,
.csdn-toolbar .container .left-menu li a{
  display: block;
  padding-left: 20px;
  padding-right: 20px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  font-size:16px;
  color:#3f3f3f;
}
.csdn-toolbar .container .left-menu li a{
    line-height: 64px;
}
body .csdn-toolbar .container .left-menu li:first-child a svg{
  width: 80px;
  height: 80px;
  margin-top: -12px;
}
.csdn-toolbar .container .pull-right{
  padding-top: 15px;
  /*margin-bottom: 15px;*/

}
.csdn-toolbar .container .pull-right li a{
  height: 30px;
  line-height: 30px;
}
.csdn-toolbar .container .left-menu .show-more .more div a{
  padding-left: 10px;
  padding-right: 10px;
  height: 38px;
  line-height: 38px;
}
.csdn-toolbar .container .left-menu .show-more .more div:last-child a{
  padding-bottom: 4px;

}
.csdn-toolbar .container .left-menu li a .iconfont-toolbar {
    font-family: "iconfont-toolbar" !important;
    font-size: 16px;
    font-style: normal;
    margin: 0 3px;
    color: #788087;
    vertical-align: middle;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: inline-block;
    -webkit-transition: -webkit-transform .5s,transform .5s;
            transition: -webkit-transform .5s,transform .5s;
    -webkit-transform-origin: 50% 48%;
       -moz-transform-origin: 50% 48%;
        -ms-transform-origin: 50% 48%;
         -o-transform-origin: 50% 48%;
            transform-origin: 50% 48%;
}
.csdn-toolbar .container .left-menu .show-more .more{
  display: none;
  position: relative;
  z-index: 99999;
  background-color: #fff;
  border-radius: 0 0 4px 4px;
  padding-left: 4px;
  padding-right: 4px;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.1);
  width: 92px;
  left: -10px;
  top: -2px;
}
.csdn-toolbar .container .left-menu li a:hover i,
.csdn-toolbar .container .left-menu li a:hover{
  color: #c92027;
}
.csdn-toolbar .container .left-menu .show-more:hover a i{
  -webkit-transform: rotate(-180deg);
     -moz-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
       -o-transform: rotate(-180deg);
          transform: rotate(-180deg);
}

/*.csdn-toolbar .container .left-menu .show-more:hover .more{
  opacity: 1;
  z-index: 999999;
}*/
.csdn-toolbar .container .left-menu .more div{
  /*border-bottom: 1px solid #e3e3e3;*/
}
.csdn-toolbar .container  .show-more a .icon-xiajiantou{
  position: relative;
  top: -1px;
}
.csdn-toolbar .container .pull-right .userControl div:last-child,
.csdn-toolbar .container .left-menu .more div:last-child{
  border-bottom: none;
}
.csdn-toolbar .container .pull-right .userinfo{
  display: none;
}
.csdn-toolbar .container .pull-right .userinfo a{
  display: inline-block;
  padding-left: 8px;
  padding-right: 8px;
}
.csdn-toolbar .container .pull-right .userinfo span{
  color: #888888;
}
.csdn-toolbar .container .pull-right .userLogin{
  display: block;
  margin-left: 40px;
}
.csdn-toolbar .container .pull-right .userLogin .login_img{
  color: #D4D4D4;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  padding: 5px 0;
  display: inline-block;
  vertical-align: top;
}
.csdn-toolbar .container .pull-right .userLogin .loginCenter{
  line-height: 27px;
}
.csdn-toolbar .container .pull-right .userLogin .loginCenter .userName{
  display: inline-block;
  overflow-x: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 106px;
}
.csdn-toolbar .container .pull-right .userLogin .loginCenter a{
  padding-left: 10px;
  padding-right: 10px;
}
.csdn-toolbar .container .pull-right .userLogin .loginCenter a:hover{
  color: #c92027;
}
.csdn-toolbar .container .pull-right .userLogin .loginCenter span{
  padding-left: 8px;
  padding-right: 2px;

}
.csdn-toolbar .container .pull-right .userControl{
  display: none;
  position: relative;
  top:15px;
  right: -32px;
  z-index: 99999;
  background-color: #fff;;
  border-radius: 0 0 4px 4px;
  padding-left: 4px;
  padding-right: 4px;
  width: 92px;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.1);
}
.csdn-toolbar .container .pull-right .userControl div{
  /*border-bottom: 1px solid #e3e3e3;*/
}
.csdn-toolbar .container .pull-right .userControl div a{
  line-height: 38px;
  text-align: center;
  font-size: 14px;
  height: 38px;
}
.csdn-toolbar .container .pull-right .userControl div a:hover{
  color: #c92027;
}
.csdn-toolbar .container .pull-right .userControl div:last-child a{
  padding-bottom: 4px;
}

/*.csdn-toolbar .container .pull-right .userLogin:hover .userControl{
  opacity: 1;
  z-index: 99999;
}*/
.csdn-toolbar .container .pull-right .btns .userLogin .loginCenter a i{
  color: #788087;
  display: inline-block;
  vertical-align: top;
  transition: -webkit-transform .3s,transform .3s;
  -webkit-transform-origin: 50% 48%;
     -moz-transform-origin: 50% 48%;
      -ms-transform-origin: 50% 48%;
       -o-transform-origin: 50% 48%;
          transform-origin: 50% 48%;
}
/*.csdn-toolbar .container .pull-right .btns li a:hover,
.csdn-toolbar .container .pull-right .btns li a:hover i,
.csdn-toolbar .container .pull-right .btns li a:hover .userName + i,
.csdn-toolbar .container .pull-right .btns li a:hover .userName{
  color: #FFffff;
}*/
.csdn-toolbar .container .pull-right .btns .userLogin:hover .loginCenter a i{
  -webkit-transform: rotate(-180deg);
     -moz-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
       -o-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
.csdn-toolbar .container .pull-right li a .icon-shouji{
  color: #D4D4D4;
  margin-right: 3px;
  position: relative;
  display: inline-block;
  top: -2px;
  left: 2px;
  width: 19px;
  vertical-align: middle;
}
.csdn-toolbar .container .pull-right li a .icon-tianxie{
  color: #D4D4D4;
  margin-right: 6px;
  vertical-align: middle;
  position: relative;
  top: -2px;
  left: 2px;
  width: 19px;
}
.loginCenter .icon-xiajiantou{
  vertical-align: top;

}
/*-------*/
.csdn-toolbar .btn {

}

.csdn-toolbar-skin-black {
  height: 30px;
  min-width: 800px;
  background:#ffffff;
  box-shadow:0 2px 4px 0 rgba(0,0,0,0.05);
  height:60px;
}
.csdn-toolbar-skin-black li {
  border-left: 1px solid #74797e;
  border-right: 1px solid #48525e;
  height: 34px;
}
/*.csdn-toolbar-skin-black li.on {
  height: 40px;
  width: 40px;
  border-right: 1px solid #fff;
}*/
.csdn-toolbar-skin-black .icon .wrap {
  top: 30px;
}
.csdn-toolbar-skin-black .icon .curr-icon-wrap {
  width: 41px;
}
.csdn-toolbar-skin-black .apps {
  border-right-color: #74797e;
}
.csdn-toolbar-skin-black .on .on-apps-icon .wrap {
  right: -12px;
}
.csdn-toolbar-skin-black .loginlink {
  background: none;
  color: #ddd;
}
.csdn-toolbar-skin-black .loginlink a {
  color: #ddd;
}
.csdn-toolbar-skin-black .loginlink a:hover {
  color: #fefefe;
}
.csdn-toolbar-skin-black .blog-icon {
  background-position: -162px -52px;
}
.csdn-toolbar-skin-black .down-icon {
  background-position: -162px -102px;
}
.csdn-toolbar-skin-black .bbs-icon {
  background-position: -162px -152px;
}
.csdn-toolbar-skin-black .space-icon {
  background-position: -162px -202px;
}
.csdn-toolbar-skin-black .code-icon {
  background-position: -162px -252px;
}
.csdn-toolbar-skin-black .share-icon {
  background-position: -162px -305px;
}
.csdn-toolbar-skin-black .tag-icon {
  background-position: -162px -354px;
}
.csdn-toolbar-skin-black .dashboard-icon {
  background-position: -162px -403px;
}
.csdn-toolbar-skin-black .news-icon {
  background-position: -162px -3px;
}
.csdn-toolbar-skin-black .tag-icon {
  background-position: -162px -354px;
}
.csdn-toolbar-skin-black .notify-icon {
  background-position: -162px -456px;
}
.csdn-toolbar-skin-black .ask-icon {
  background-position: -162px -503px;
}
.csdn-toolbar .container .pull-right .write-bolg-btn{
  padding-left: 20px;
  /*padding-right: 20px;*/
}
.csdn-toolbar .container .pull-right .gitChat a{
  border:1px solid #ddd;
  padding-left: 0;
  padding-right: 0;
  margin-left: 24px;
  border-radius:50%;
  width: 24px;
  height: 24px;
  line-height: 24px;
  /*background-color: #F59701;*/
  color: #fff;
}
.csdn-toolbar .container .pull-right .gitChat a:hover i{
  color: #D18100;
}
.csdn-toolbar .container .pull-right .gitChat a i{
  font-size: 25px;
  color: #F59701;
}
.csdn-toolbar .container .pull-right .write-bolg-btn a{
  border:1px solid #e74040;
  border-radius:50%;
  width:24px;
  height:24px;
  color: #fff;
  padding-left: 0;
  padding-right: 0;
  line-height: 24px;
}
.csdn-toolbar .container .pull-right .write-bolg-btn a:hover i{
  color: #D9311E;
}
.csdn-toolbar .container .pull-right .write-bolg-btn a i{
  font-size: 25px;
  color: #e74040;
}
/*未登录toolbar状态*/
.csdn-toolbar .container .unlogin .userinfo{
  display: block;
  margin-left: 20px;
}
.csdn-toolbar .container .unlogin .btns .userLogin{
  display: none;

}
/*搜索框*/
.csdn-toolbar .container .search_bar {
    float: right;
    background: #fff;
    width: 180px;
    height: 28px;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-right: 15px;
}
.csdn-toolbar .container .search_bar .input_search {
    font-size: 14px;
    color: #778087;
    display: block;
    float: left;
    width: 130px;
    padding: 5px 10px;
    border: 0;
    height: 18px;
    border-radius: 10px;
}
.csdn-toolbar .container .search_bar .btn-search,
.csdn-toolbar .container .search_bar .btn_clear {
    background-color: rgba(0,0,0,0);
    /*color: #8e8e8e;*/
    padding: 0 2px;
    font-size: 14px;
    display: block;
    text-align: center;
    width: 26px;
    height: 26px;
    float: right;
    line-height: 26px;
}
.csdn-toolbar .container .search_bar .btn_clear:hover i{
  color: #999;
}
.csdn-toolbar .icon{
  background-image:none;
}
.btn:focus, .btn:active {
    outline: none;
    border: 0;
    box-shadow: 0 0 0 rgba(0,0,0,0);
}
.csdn-toolbar .container .show-more{
  width: 100px;
}
/*媒体查询*/
@media(min-width:1280px){
  body .csdn-toolbar .container {
    width: 1160px;
  }
}
@media(min-width:1366px){
  
}
@media(min-width:1440px){
  body .csdn-toolbar .container {
    width: 1240px;
  }
}
/*提示框*/
.csdn-toolbar .toolbar-prompt-box{
  background: rgba(51,51,51,0.80);
  position: absolute;
  bottom: -32px;
  display: none;
  font-size: 14px;
  padding:0 8px;
}
.toolbar-prompt-box span{
  white-space:nowrap;
  font-size: 14px
}
.toolbar-prompt-box .arrow{
  position: absolute;
  top: -10px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 10px 5px;
  border-color: transparent transparent  rgba(51,51,51,0.80) transparent;
}
.toolbar_speck{
  position: absolute;
  top: 18px;
  right: 14px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #e74040;
}</style>
              <!-- adhoc sdk -->
		<script data-savepage-src="https://sdk.appadhoc.com/ab.plus.js" src=""></script><style type="text/css"></style><style type="text/css"></style>
		<script></script><style type="text/css"></style>
              <!-- adhoc sdk end -->
    
	<script data-savepage-src="//static.blog.csdn.net/public/switchHome/switchHome.js?v=2017.042" src=""></script>	
	
    <script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/Skin/skin3-template/fonts/iconfont.js" src=""></script>
    <script data-savepage-src="//csdnimg.cn/rabbit/exposure-click/main.js?v1.15.23" src=""></script>
    <script type="text/javascript" data-savepage-src="http://c.csdnimg.cn/pubfooter/js/tracking_for_recommend.js?v=0911" src="" charset="utf-8"></script>
    <script type="text/javascript" data-savepage-src="http://csdnimg.cn/pubfooter/js/tracking.js" src="" charset="utf-8"></script>
    <script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/scripts/cnick.js" src="" charset="utf-8"></script>
 
    <style data-savepage-href="http://static.blog.csdn.net/code/prettify.css">/* Pretty printing styles. Used with prettify.js. */

/* SPAN elements with the classes below are added by prettyprint. */
.pln { color: #000 }  /* plain text */

@media screen {
  .str { color: #080 }  /* string content */
  .kwd { color: #008 }  /* a keyword */
  .com { color: #800 }  /* a comment */
  .typ { color: #606 }  /* a type name */
  .lit { color: #066 }  /* a literal value */
  /* punctuation, lisp open bracket, lisp close bracket */
  .pun, .opn, .clo { color: #660 }
  .tag { color: #008 }  /* a markup tag name */
  .atn { color: #606 }  /* a markup attribute name */
  .atv { color: #080 }  /* a markup attribute value */
  .dec, .var { color: #606 }  /* a declaration; a variable name */
  .fun { color: red }  /* a function name */
}

/* Use higher contrast and text-weight for printable form. */
@media print, projection {
  .str { color: #060 }
  .kwd { color: #006; font-weight: bold }
  .com { color: #600; font-style: italic }
  .typ { color: #404; font-weight: bold }
  .lit { color: #044 }
  .pun, .opn, .clo { color: #440 }
  .tag { color: #006; font-weight: bold }
  .atn { color: #404 }
  .atv { color: #060 }
}

/* Put a border around prettyprinted code snippets. */
pre.prettyprint { padding: 2px; border: 0px solid #888 }

/* Specify class=linenums on a pre to get line numbering */
ol.linenums { margin-top: 0; margin-bottom: 0 } /* IE indents via margin-left */
li.L0,
li.L1,
li.L2,
li.L3,
li.L5,
li.L6,
li.L7,
li.L8 { list-style-type: none }
/* Alternate shading for lines 
li.L1,
li.L3,
li.L5,
li.L7,
li.L9 { background: #eee }
*/
</style>
    <script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/code/prettify.js" src=""></script>
<script data-savepage-src="http://dup.baidustatic.com/js/ds.js" src=""></script>
    <script type="text/javascript"></script>
    <meta name="description" content="makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和professional的程序员，makefile还是要懂。这就好像现在有这么多的HTML的编辑器，但如果你想成为一个专业人士，你还是要了解HTML的标识的含义。特别在Unix下的软件编译，你就不能不自己写make">
    <meta name="keywords" content="makefile,编译器">
    <meta http-equiv="Cache-Control" content="no-siteapp"><link rel="alternate" media="handheld" href="#">
    <meta name="shenma-site-verification" content="5a59773ab8077d4a62bf469ab966a63b_1497598848">


    <title>Makefile经典教程(掌握这些足够) - CSDN博客</title>
<script data-savepage-src="https://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js" src=""></script><script data-savepage-src="http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion=419424" src=""></script><style type="text/css">.MathJax_Hover_Frame {border-radius: .25em; -webkit-border-radius: .25em; -moz-border-radius: .25em; -khtml-border-radius: .25em; box-shadow: 0px 0px 15px #83A; -webkit-box-shadow: 0px 0px 15px #83A; -moz-box-shadow: 0px 0px 15px #83A; -khtml-box-shadow: 0px 0px 15px #83A; border: 1px solid #A6D ! important; display: inline-block; position: absolute}
.MathJax_Hover_Arrow {position: absolute; width: 15px; height: 11px; cursor: pointer}
</style><style type="text/css">#MathJax_About {position: fixed; left: 50%; width: auto; text-align: center; border: 3px outset; padding: 1em 2em; background-color: #DDDDDD; color: black; cursor: default; font-family: message-box; font-size: 120%; font-style: normal; text-indent: 0; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; z-index: 201; border-radius: 15px; -webkit-border-radius: 15px; -moz-border-radius: 15px; -khtml-border-radius: 15px; box-shadow: 0px 10px 20px #808080; -webkit-box-shadow: 0px 10px 20px #808080; -moz-box-shadow: 0px 10px 20px #808080; -khtml-box-shadow: 0px 10px 20px #808080; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')}
.MathJax_Menu {position: absolute; background-color: white; color: black; width: auto; padding: 5px 0px; border: 1px solid #CCCCCC; margin: 0; cursor: default; font: menu; text-align: left; text-indent: 0; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; z-index: 201; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -khtml-border-radius: 5px; box-shadow: 0px 10px 20px #808080; -webkit-box-shadow: 0px 10px 20px #808080; -moz-box-shadow: 0px 10px 20px #808080; -khtml-box-shadow: 0px 10px 20px #808080; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')}
.MathJax_MenuItem {padding: 1px 2em; background: transparent}
.MathJax_MenuArrow {position: absolute; right: .5em; color: #666666}
.MathJax_MenuActive .MathJax_MenuArrow {color: white}
.MathJax_MenuArrow.RTL {left: .5em; right: auto}
.MathJax_MenuCheck {position: absolute; left: .7em}
.MathJax_MenuCheck.RTL {right: .7em; left: auto}
.MathJax_MenuRadioCheck {position: absolute; left: .7em}
.MathJax_MenuRadioCheck.RTL {right: .7em; left: auto}
.MathJax_MenuLabel {padding: 1px 2em 3px 1.33em; font-style: italic}
.MathJax_MenuRule {border-top: 1px solid #DDDDDD; margin: 4px 3px}
.MathJax_MenuDisabled {color: GrayText}
.MathJax_MenuActive {background-color: #606872; color: white}
.MathJax_Menu_Close {position: absolute; width: 31px; height: 31px; top: -15px; left: -15px}
</style><style type="text/css">#MathJax_Zoom {position: absolute; background-color: #F0F0F0; overflow: auto; display: block; z-index: 301; padding: .5em; border: 1px solid black; margin: 0; font-weight: normal; font-style: normal; text-align: left; text-indent: 0; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; box-shadow: 5px 5px 15px #AAAAAA; -webkit-box-shadow: 5px 5px 15px #AAAAAA; -moz-box-shadow: 5px 5px 15px #AAAAAA; -khtml-box-shadow: 5px 5px 15px #AAAAAA; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true')}
#MathJax_ZoomOverlay {position: absolute; left: 0; top: 0; z-index: 300; display: inline-block; width: 100%; height: 100%; border: 0; padding: 0; margin: 0; background-color: white; opacity: 0; filter: alpha(opacity=0)}
#MathJax_ZoomFrame {position: relative; display: inline-block; height: 0; width: 0}
#MathJax_ZoomEventTrap {position: absolute; left: 0; top: 0; z-index: 302; display: inline-block; border: 0; padding: 0; margin: 0; background-color: white; opacity: 0; filter: alpha(opacity=0)}
</style><style type="text/css">.MathJax_Preview {color: #888}
#MathJax_Message {position: fixed; left: 1px; bottom: 2px; background-color: #E6E6E6; border: 1px solid #959595; margin: 0px; padding: 2px 8px; z-index: 102; color: black; font-size: 80%; width: auto; white-space: nowrap}
#MathJax_MSIE_Frame {position: absolute; top: 0; left: 0; width: 0px; z-index: 101; border: 0px; margin: 0px; padding: 0px}
.MathJax_Error {color: #CC0000; font-style: italic}
</style><style data-savepage-href="http://passport.csdn.net/content/loginbox/style.css?r=1509931522822" type="text/css">body {
}
 
#csdn_shield { position:absolute; z-index:101; left:0px; top:0px; display:block; background-color:#999; width:100%; }

#csdn_divh { position:absolute; z-index:10001; top:30%; left:45%; width:460px; margin-left:-200px; }
#csdn_divh img { border:none; }

.loading { padding:20px; height:60px; text-align:center;font-size:16px; background:/*savepage-url=images/wait.gif*/url() no-repeat center bottom #ffffff;}
.h1title { font-size:20px; margin-top:0px; padding-top:6px; border-bottom:solid 4px #FFE2D2;}
.openbox { border:solid 10px #FFE2D2; border-radius:10px; padding:10px; background-color:#fff; font-size:14px;}
.boxbody {}

#vcfrm { width:150px; height:50px; overflow:hidden; border:none; }

#csdn_divh a.revc { position:relative; top:-20px; margin-left:10px;}

#sperr { color:Red; }

#tr_third {}
#tr_third a { margin-right:8px; }

.clearfix { display:block; *display:inline-block;}
.clearfix:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}
.csdn_loginbox{ margin:0 auto; background-image:/*savepage-url=images/login_bg.png*/url(); padding:3px; margin-top:100px; border-radius: 4px;}
.login_content{ width:auto;max-width:406px;text-align:left; margin:0 auto; background-color:#fbfbfb; border: solid 1px #ccc; padding:40px 82px;box-shadow:0px 0px 1px #fff inset; border-radius: 4px; position:fixed;top:50%;margin-top:-180px;}
.login_content_inner{width: 240px;margin:0 auto;}
@media (max-width:768px){
	.login_content{
		padding:40px 30px;
		left:50%;
		margin-left: -150px;
		
	}
}

.csdn_loginbox .close{ border: none; background:/*savepage-url=images/icons.png*/url() -10px 10px no-repeat; width:30px; height:30px; position:absolute; top:0; right:0;border-radius: 3px; cursor:pointer;}
.csdn_loginbox .close:hover{ background:/*savepage-url=images/icons.png*/url() -10px -19px no-repeat;}
.csdn_loginbox .point{ font-size:12px; color:#ff6666; text-align:center; margin-bottom:5px;}

.csdn_loginbox .user_id{ width:210px; height:30px; border-radius: 3px;border:1px #e3e3e3 solid; margin-bottom:10px;background:/*savepage-url=images/icons.png*/url() #fff -8px -155px no-repeat; padding-left:30px;}
.csdn_loginbox .password{  width:210px; height:30px; border-radius: 3px; border:1px #e3e3e3 solid; margin-bottom:10px;background:/*savepage-url=images/icons.png*/url() #fff -8px -187px no-repeat; padding-left:30px;}
.csdn_loginbox .remember{ font-size:12px; text-align:left; color:#999; margin-bottom:20px; vertical-align:middle; line-height: 13px;}  
.csdn_loginbox .remember input{ float:left; margin-right:10px; float:left; vertical-align:middle;}

.next_login{display:block;width:210px; height:26px;overflow:hidden;}
.remember em{font-style:normal;display:inline-block; vertical-align: middle;float:left;
	line-height:19px;}

.csdn_loginbox .login_bt{ text-align:left; padding:8px 22px; cursor:pointer; border: 1px solid #ef5f06; background-color:#ff6c1e; margin-top:1px; font-size:14px; font-weight:bold; color:#FFF;  border-radius: 3px; margin-bottom:35px;}
.csdn_loginbox .login_bt:hover{ background-color:#ff3300; border: 1px solid #cc3300; }

.csdn_loginbox .pw_lg{ float:right; font-size:12px; color:#999;}
.csdn_loginbox .pw_lg a{ color:#999; text-decoration:none; padding:0 5px;}
.csdn_loginbox a.pw_a{ padding-right:0; width:100px; background:none;}
.csdn_loginbox .pw_lg a:hover{ color:#06c;}

.csdn_loginbox .lg_3{ font-size:12px; color:#666; line-height:22px; text-align:left;}
.csdn_loginbox .lg_3 span{display:block;width:74px;float:left;}
.csdn_loginbox .lg_3 a{ display:block; float:left; background-repeat:no-repeat;width:20px; height:20px;margin-left: 8px; border-radius: 3px; background-size:cover;}
.csdn_loginbox .lg_3 a:hover { background-color:#eee; }
.csdn_loginbox  .lg_3 a.pw_a{width:50px;color:#666;font-size:12px;  background:none;height:20px;float:right;}
.csdn_loginbox  .lg_3 a.pw_a:hover{background:none;}
.csdn_loginbox .weibo{ background-position:0 0; margin-left:0; }

.csdn_loginbox .google{ background-position:-13px -125px;} 
.csdn_loginbox .github{ background-position:-14px -226px; } 
.csdn_loginbox .LinkedIn{ background-position:-14px -262px;} 
.csdn_loginbox .baidu{ background-position:-14px -289px;}
.csdn_loginbox .qq{ background:/*savepage-url=http://passport.csdn.net/images/QQ.svg*/url() no-repeat center;width:20px;height:20px; background-size:cover;}
.csdn_loginbox .lg_3 a.wechat{ background:/*savepage-url=http://passport.csdn.net/images/weixin.svg*/url() no-repeat center;width:20px;height:20px; background-size:cover;}

div#csdn_divh { width:auto; }</style><style data-savepage-href="http://bdimg.share.baidu.com/static/api/css/share_style0_16.css?v=6aba13f0.css">.bdshare-button-style0-16 .bds_qzone{background-position:0 -52px}.bdshare-button-style0-16 .bds_tsina{background-position:0 -104px}.bdshare-button-style0-16 .bds_renren{background-position:0 -208px}.bdshare-button-style0-16 .bds_tqq{background-position:0 -260px}.bdshare-button-style0-16 .bds_kaixin001{background-position:0 -312px}.bdshare-button-style0-16 .bds_tqf{background-position:0 -364px}.bdshare-button-style0-16 .bds_hi{background-position:0 -416px}.bdshare-button-style0-16 .bds_douban{background-position:0 -468px}.bdshare-button-style0-16 .bds_tieba{background-position:0 -728px}.bdshare-button-style0-16 .bds_hx{background-position:0 -988px}.bdshare-button-style0-16 .bds_fx{background-position:0 -1040px}.bdshare-button-style0-16 .bds_ty{background-position:0 -1196px}.bdshare-button-style0-16 .bds_fbook{background-position:0 -1352px}.bdshare-button-style0-16 .bds_twi{background-position:0 -1404px}.bdshare-button-style0-16 .bds_linkedin{background-position:0 -1664px}.bdshare-button-style0-16 .bds_meilishuo{background-position:0 -1716px}.bdshare-button-style0-16 .bds_mogujie{background-position:0 -1768px}.bdshare-button-style0-16 .bds_diandian{background-position:0 -1820px}.bdshare-button-style0-16 .bds_huaban{background-position:0 -1872px}.bdshare-button-style0-16 .bds_duitang{background-position:0 -2028px}.bdshare-button-style0-16 .bds_youdao{background-position:0 -2080px}.bdshare-button-style0-16 .bds_wealink{background-position:0 -2184px}.bdshare-button-style0-16 .bds_copy{background-position:0 -2288px}.bdshare-button-style0-16 .bds_mail{background-position:0 -2340px}.bdshare-button-style0-16 .bds_print{background-position:0 -2392px}.bdshare-button-style0-16 .bds_mshare{background-position:0 -2444px}.bdshare-button-style0-16 .bds_sqq{background-position:0 -2652px}.bdshare-button-style0-16 .bds_sdo{background-position:0 -2704px}.bdshare-button-style0-16 .bds_qingbiji{background-position:0 -2756px}.bdshare-button-style0-16 .bds_people{background-position:0 -2808px}.bdshare-button-style0-16 .bds_xinhua{background-position:0 -2912px}.bdshare-button-style0-16 .bds_yaolan{background-position:0 -2964px}.bdshare-button-style0-16 .bds_thx{background-position:0 -2496px}.bdshare-button-style0-16 .bds_bdhome{background-position:0 -156px}.bdshare-button-style0-16 .bds_bdxc{background-position:0 -2548px}.bdshare-button-style0-16 .bds_bdysc{background-position:0 -3068px}.bdshare-button-style0-16 .bds_isohu{background-position:0 -3016px}.bdshare-button-style0-16 .bds_more{background-position:0 0}.bdshare-button-style0-16 .bds_ibaidu{background-position:0 -3120px}.bdshare-button-style0-16 .bds_weixin{background-position:0 -1612px}.bdshare-button-style0-16 .bds_iguba{background-position:0 -1300px}.bdshare-button-style0-16 .bds_h163{background-position:0 -3160px}.bdshare-button-style0-16 .bds_evernotecn{background-position:0 -3184px}.bdshare-button-style0-16{zoom:1}.bdshare-button-style0-16:after{content:".";visibility:hidden;display:block;height:0;clear:both}.bdshare-button-style0-16 a,.bdshare-button-style0-16 .bds_more{float:left;font-size:12px;padding-left:17px;line-height:16px;height:16px;background-image:/*savepage-url=../img/share/icons_0_16.png?v=91362611.png*/url();background-repeat:no-repeat;cursor:pointer;margin:6px 6px 6px 0}.bdshare-button-style0-16 a:hover{color:#333;opacity:.8;filter:alpha(opacity=80)}.bdshare-button-style0-16 .bds_more{color:#333;float:left}.bdshare-button-style0-16 .bds_count{color:#333;background:/*savepage-url=../img/share/sc.png?v=a970ff04.png*/url() no-repeat 0 -30px;width:42px;height:16px;padding:0;margin:6px 0 0;text-align:center}.bdshare-button-style0-16 .bds_count:hover{background-position:-42px -30px}.bdshare-button-style0-16 .bds_button_image{float:left;cursor:pointer;margin:6px 6px 0 0;height:auto;padding:0}.bdshare-button-style0-16 .bdshare_button_count{background:/*savepage-url=../img/share/sc.png?v=a970ff04.png*/url() no-repeat 0 0;width:44px;height:24px;line-height:24px}.bdshare-button-style0-16 .bdshare_button_count:hover{background-position:-44px 0}.bds_tsohu,.bds_tfh,.bds_baidu,.bds_qq,.bds_msn,.bds_sohu,.bds_qy,.bds_leho,.bds_ifeng,.bds_ff,.bds_tuita,.bds_ms,.bds_deli,.bds_s51,.bds_t163,.bds_share189,.bds_xg,.bds_s139{display:none}</style><style type="text/css">.MathJax_Display {text-align: center; margin: 1em 0em; position: relative; display: block!important; text-indent: 0; max-width: none; max-height: none; min-width: 0; min-height: 0; width: 100%}
.MathJax .merror {background-color: #FFFF88; color: #CC0000; border: 1px solid #CC0000; padding: 1px 3px; font-style: normal; font-size: 90%}
.MathJax .MJX-monospace {font-family: monospace}
.MathJax .MJX-sans-serif {font-family: sans-serif}
#MathJax_Tooltip {background-color: InfoBackground; color: InfoText; border: 1px solid black; box-shadow: 2px 2px 5px #AAAAAA; -webkit-box-shadow: 2px 2px 5px #AAAAAA; -moz-box-shadow: 2px 2px 5px #AAAAAA; -khtml-box-shadow: 2px 2px 5px #AAAAAA; filter: progid:DXImageTransform.Microsoft.dropshadow(OffX=2, OffY=2, Color='gray', Positive='true'); padding: 3px 4px; z-index: 401; position: absolute; left: 0; top: 0; width: auto; height: auto; display: none}
.MathJax {display: inline; font-style: normal; font-weight: normal; line-height: normal; font-size: 100%; font-size-adjust: none; text-indent: 0; text-align: left; text-transform: none; letter-spacing: normal; word-spacing: normal; word-wrap: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0; min-height: 0; border: 0; padding: 0; margin: 0}
.MathJax img, .MathJax nobr, .MathJax a {border: 0; padding: 0; margin: 0; max-width: none; max-height: none; min-width: 0; min-height: 0; vertical-align: 0; line-height: normal; text-decoration: none}
img.MathJax_strut {border: 0!important; padding: 0!important; margin: 0!important; vertical-align: 0!important}
.MathJax span {display: inline; position: static; border: 0; padding: 0; margin: 0; vertical-align: 0; line-height: normal; text-decoration: none}
.MathJax nobr {white-space: nowrap!important}
.MathJax img {display: inline!important; float: none!important}
.MathJax * {transition: none; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none}
.MathJax_Processing {visibility: hidden; position: fixed; width: 0; height: 0; overflow: hidden}
.MathJax_Processed {display: none!important}
.MathJax_ExBox {display: block!important; overflow: hidden; width: 1px; height: 60ex; min-height: 0; max-height: none}
.MathJax .MathJax_EmBox {display: block!important; overflow: hidden; width: 1px; height: 60em; min-height: 0; max-height: none}
.MathJax .MathJax_HitBox {cursor: text; background: white; opacity: 0; filter: alpha(opacity=0)}
.MathJax .MathJax_HitBox * {filter: none; opacity: 1; background: transparent}
#MathJax_Tooltip * {filter: none; opacity: 1; background: transparent}
@font-face {font-family: MathJax_Blank; src: /*savepage-url=about:blank*/ url()}
.MathJax .noError {vertical-align: ; font-size: 90%; text-align: left; color: black; padding: 1px 3px; border: 1px solid}
</style>
<link rel="icon" href="data:image/x-icon;resource=10;base64,">

<script id="savepage-pageloader" type="application/javascript">
savepage_PageLoader(2);
"use strict";function savepage_PageLoader(maxframedepth){var resourceMimeType=new Array();var resourceBase64Data=new Array();var resourceBlobUrl=new Array();window.addEventListener("DOMContentLoaded",function(a){createBlobURLs();replaceReferences(0,document.documentElement)},false);function createBlobURLs(){var i,j,binaryString,blobData;var a=new Array();for(i=0;i<resourceMimeType.length;i++){if(typeof resourceMimeType[i]!="undefined"){binaryString=atob(resourceBase64Data[i]);resourceBase64Data[i]="";a.length=0;for(j=0;j<binaryString.length;j++){a[j]=binaryString.charCodeAt(j)}blobData=new Blob([new Uint8Array(a)],{type:resourceMimeType[i]});resourceMimeType[i]="";resourceBlobUrl[i]=window.URL.createObjectURL(blobData)}}}function replaceReferences(a,b){var i,regex1,regex2,csstext;regex1=/url\(\s*(?:'|")?data:[^;]*;resource=(\d+);base64,(?:'|")?\s*\)/gi;regex2=/data:[^;]*;resource=(\d+);base64,/i;if(b.hasAttribute("style")){csstext=b.style.cssText;b.style.cssText=csstext.replace(regex1,replaceCSSRef)}if(b.localName=="style"){csstext=b.textContent;b.textContent=csstext.replace(regex1,replaceCSSRef)}else if(b.localName=="link"&&(b.rel.toLowerCase()=="icon"||b.rel.toLowerCase()=="shortcut icon")){if(b.href!="")b.href=b.href.replace(regex2,replaceRef)}else if(b.localName=="body"){if(b.background!="")b.background=b.background.replace(regex2,replaceRef)}else if(b.localName=="img"){if(b.src!="")b.src=b.src.replace(regex2,replaceRef)}else if(b.localName=="input"&&b.type.toLowerCase()=="image"){if(b.src!="")b.src=b.src.replace(regex2,replaceRef)}else if(b.localName=="audio"){if(b.src!=""){b.src=b.src.replace(regex2,replaceRef);b.load()}}else if(b.localName=="video"){if(b.src!=""){b.src=b.src.replace(regex2,replaceRef);b.load()}if(b.poster!="")b.poster=b.poster.replace(regex2,replaceRef)}else if(b.localName=="source"){if(b.src!=""){b.src=b.src.replace(regex2,replaceRef);b.parentElement.load()}}else if(b.localName=="track"){if(b.src!="")b.src=b.src.replace(regex2,replaceRef)}else if(b.localName=="object"){if(b.data!="")b.data=b.data.replace(regex2,replaceRef)}else if(b.localName=="embed"){if(b.src!="")b.src=b.src.replace(regex2,replaceRef)}if(b.localName=="iframe"||b.localName=="frame"){try{if(b.contentDocument.documentElement!=null){if(a<maxframedepth){replaceReferences(a+1,b.contentDocument.documentElement)}}}catch(e){}}else{for(i=0;i<b.children.length;i++)if(b.children[i]!=null)replaceReferences(a,b.children[i])}}function replaceCSSRef(a,b,c,d){return"url("+resourceBlobUrl[+b]+")"}function replaceRef(a,b,c,d){return resourceBlobUrl[+b]}
resourceMimeType[9] = "application/octet-stream"; resourceBase64Data[9] = "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";
resourceMimeType[10] = "image/x-icon"; resourceBase64Data[10] = "AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAaAMAAAAAAAAAAAAAAAAAAAAAAAAqIsIqI8AnIsMsIsIqIsIsIsIsIsIqI8AqI8AqJL8qIsIqIsIqIsIqIsIsI8AoIsMpJcEsI8AoI8IrJcAnIsEpJcAoI8IqIsIrI8QoI8IpI74qIsIqI8AqI8AoJMAqI8AqIsMpJcAvI8MqIsJXTs2Sj9/FxPDb3fXr6Pjt7/np6Pjj4PbOz/FpY9IoJL8rIcEsI8AqI8AxLMOko+P7+/v//v7////+/v7+//3+/v7///79/f36//2fm+ItJMEqIsIpJcExLMPFwvD8/f////79/vz///////7h4vbJyfHGxO7a1vPv7fm3tOsuIcMqI8AsI8CJhtz//v78//3//P7//v+6tupXVM8xLMUqIsIqJL8pJcA7M8ZMRcsqJsEnI74oI8LY1fX9/f39//7+/v7Myu4qJsEqIsMqI8ApI8QqJL8qIsIqIsIoJMAoJL8sIsIoJL/08Pv+/v78/v7//v2HhtwoI8ItJMEsIsIoJMAoIsMqJb4sIsIqIsIqI8AoI8IrJMHs7Pj+/f///////v2Fg9wtIsQqI8AoI8IqI8ApIcErJMEnI78oI8IsIsIsJL8sIsLAve75/vz//v7//f+6uuosI8AnI8IqIsIrJcAtI8MpIcEsIcMsIsIoIsMoJMAqIsJrZtP8/v78/v78//36+/9ubdQoJMArI8QoI8IqI8ArJMEoJMAqJL8qIsIqJL8tI8MpJcC3tOv//f/8/v79/vz//P6qpOVjXdI9OcgvKcQxKcM/NchYUM1dWdAoIsMqJL8oJMA0LMa4suv///7////9/f38/v7///zw8fve3vbh3fbv8fn////R0e8sIsIqIsIsJL8oI8IsIsKBf9nb3PH9///7/f38/v///v3+/f/9/f36//7//v7l5PgpJcEqI8AqI8AnIsEqIsIvJMEyLsNtadOno+XTz/Ls6fjv8Prw7/jv8Prf3PWuqecoJMAoI8IqIsIqI8AoJMAmI78sIcMqI8AoJMAqI8AqIsMqIsIqI8AoI8IoI8IsIsInI78AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
resourceMimeType[11] = "image/jpeg"; resourceBase64Data[11] = "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";
resourceMimeType[12] = "image/png"; resourceBase64Data[12] = "iVBORw0KGgoAAAANSUhEUgAAAIwAAADYCAYAAAA53wvfAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2tpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozMEU1MkRGNDY5RTUxMUUzQUQ2OUNEMEM5QTVFOTA4NyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo3MkFFMUM3RDc5REUxMUUzQTFBNTk2MkJFRjAyRTM2OCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo3MkFFMUM3Qzc5REUxMUUzQTFBNTk2MkJFRjAyRTM2OCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpjODI0MTYzMS1iODI4LTRiZWMtODg5NS00NGEwNzA3ZmIxMzIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MzBFNTJERjQ2OUU1MTFFM0FENjlDRDBDOUE1RTkwODciLz4gPC9yZGY6RGVz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";
resourceMimeType[25] = "image/svg+xml"; resourceBase64Data[25] = "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE3LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuWbvuWxgl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB3aWR0aD0iNTZweCIgaGVpZ2h0PSI2NHB4IiB2aWV3Qm94PSIwIDAgNTYgNjQiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDU2IDY0IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8Zz4KCQk8Zz4KCQkJPGc+CgkJCQk8cGF0aCBmaWxsPSIjRjI5QTgwIiBkPSJNNDAsMEg4QzMuNTgyLDAsMCwzLjU4MiwwLDh2NDhjMCw0LjQxOCwzLjU4Miw4LDgsOGg0MGM0LjQxOCwwLDgtMy41ODIsOC04VjE2TDQwLDB6Ii8+CgkJCTwvZz4KCQkJPGc+CgkJCQk8cGF0aCBmaWxsPSIjRjhDQUJCIiBkPSJNNDAsOGMwLDQuNDE4LDMuNTgyLDgsOCw4aDhMNDAsMFY4eiIvPgoJCQk8L2c+CgkJPC9nPgoJPC9nPgo8L2c+CjxnPgoJPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTEzLjc1MywzNy43MjdWMjYuMjczaDMuNzExYzEuNDA2LDAsMi4zMjMsMC4wNTgsMi43NSwwLjE3MmMwLjY1NiwwLjE3MiwxLjIwNiwwLjU0NiwxLjY0OCwxLjEyMQoJCWMwLjQ0MiwwLjU3NiwwLjY2NCwxLjMxOSwwLjY2NCwyLjIzYzAsMC43MDMtMC4xMjgsMS4yOTQtMC4zODMsMS43NzNjLTAuMjU1LDAuNDc5LTAuNTgsMC44NTUtMC45NzMsMS4xMjkKCQljLTAuMzk0LDAuMjczLTAuNzkzLDAuNDU1LTEuMTk5LDAuNTQzYy0wLjU1MiwwLjEwOS0xLjM1MiwwLjE2NC0yLjM5OCwwLjE2NGgtMS41MDh2NC4zMkgxMy43NTN6IE0xNi4wNjYsMjguMjExdjMuMjVoMS4yNjYKCQljMC45MTEsMCwxLjUyMS0wLjA2LDEuODI4LTAuMThjMC4zMDctMC4xMiwwLjU0OC0wLjMwNywwLjcyMy0wLjU2M2MwLjE3NC0wLjI1NSwwLjI2Mi0wLjU1MiwwLjI2Mi0wLjg5MQoJCWMwLTAuNDE3LTAuMTIzLTAuNzYtMC4zNjctMS4wMzFjLTAuMjQ1LTAuMjcxLTAuNTU1LTAuNDQtMC45My0wLjUwOGMtMC4yNzYtMC4wNTItMC44MzEtMC4wNzgtMS42NjQtMC4wNzhIMTYuMDY2eiIvPgoJPHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTIzLjYxNywyNi4yNzNoNC4yMjdjMC45NTMsMCwxLjY4LDAuMDczLDIuMTgsMC4yMTljMC42NzIsMC4xOTgsMS4yNDcsMC41NSwxLjcyNywxLjA1NQoJCWMwLjQ3OSwwLjUwNSwwLjg0NCwxLjEyNCwxLjA5NCwxLjg1NWMwLjI1LDAuNzMyLDAuMzc1LDEuNjM0LDAuMzc1LDIuNzA3YzAsMC45NDMtMC4xMTcsMS43NTUtMC4zNTIsMi40MzgKCQljLTAuMjg3LDAuODMzLTAuNjk1LDEuNTA4LTEuMjI3LDIuMDIzYy0wLjQwMSwwLjM5MS0wLjk0MywwLjY5NS0xLjYyNSwwLjkxNGMtMC41MTEsMC4xNjItMS4xOTMsMC4yNDItMi4wNDcsMC4yNDJoLTQuMzUyVjI2LjI3M3oKCQkgTTI1LjkzLDI4LjIxMXY3LjU4NmgxLjcyN2MwLjY0NiwwLDEuMTEyLTAuMDM2LDEuMzk4LTAuMTA5YzAuMzc1LTAuMDk0LDAuNjg2LTAuMjUyLDAuOTM0LTAuNDc3CgkJYzAuMjQ3LTAuMjI0LDAuNDQ5LTAuNTkyLDAuNjA1LTEuMTA1YzAuMTU2LTAuNTEzLDAuMjM0LTEuMjEyLDAuMjM0LTIuMDk4YzAtMC44ODUtMC4wNzgtMS41NjUtMC4yMzQtMi4wMzkKCQljLTAuMTU2LTAuNDc0LTAuMzc1LTAuODQ0LTAuNjU2LTEuMTA5cy0wLjYzOC0wLjQ0NS0xLjA3LTAuNTM5Yy0wLjMyMy0wLjA3My0wLjk1Ni0wLjEwOS0xLjg5OC0wLjEwOUgyNS45M3oiLz4KCTxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0zNC4zOTUsMzcuNzI3VjI2LjI3M2g3Ljg1MnYxLjkzOGgtNS41Mzl2Mi43MTFoNC43ODF2MS45MzhoLTQuNzgxdjQuODY3SDM0LjM5NXoiLz4KPC9nPgo8L3N2Zz4K";
resourceMimeType[36] = "image/png"; resourceBase64Data[36] = "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";
resourceMimeType[37] = "image/png"; resourceBase64Data[37] = "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";
resourceMimeType[38] = "image/png"; resourceBase64Data[38] = "iVBORw0KGgoAAAANSUhEUgAAAA0AAAAMCAYAAAC5tzfZAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MEIyMzc4QjBDNTk1MTFFNjg0Q0E4NkZCOTBCNzY4MTgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MEIyMzc4QjFDNTk1MTFFNjg0Q0E4NkZCOTBCNzY4MTgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowQjIzNzhBRUM1OTUxMUU2ODRDQTg2RkI5MEI3NjgxOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowQjIzNzhBRkM1OTUxMUU2ODRDQTg2RkI5MEI3NjgxOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuJQkrMAAACjSURBVHjajJGBDYJADEXLxQVcQVdgBFc4RrhbwVXQDbgNdBZZgRX4NS0pBxV/8gJceCX9NM/yIqQHCTxApnVuYAATuPJBMALJta+ENziDC/jw4QnEarIOKCLYsBj5S3faJu0IOqgEZw9yhE53oj/ERbASZ/whTfYhVC15SVL7IsUDQRNVDNV/sTtkR/xWXpyl98oZtfIsL2xakvPOCC3fzAIMALpCJCxIViVXAAAAAElFTkSuQmCC";
resourceMimeType[39] = "image/jpeg"; resourceBase64Data[39] = "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAYEBAQFBAYFBQYJBgUGCQsIBgYICwwKCgsKCgwQDAwMDAwMEAwODxAPDgwTExQUExMcGxsbHCAgICAgICAgICD/2wBDAQcHBw0MDRgQEBgaFREVGiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICD/wAARCAAZAEgDAREAAhEBAxEB/8QAGwAAAgMBAQEAAAAAAAAAAAAAAwcABAUBAgb/xAAuEAAABQQABAQGAwEAAAAAAAABAgMEEQAFEhMUFSExBiIyQQcXMzdCUlR0smL/xAAbAQABBQEBAAAAAAAAAAAAAAAAAQIDBAUGB//EACsRAAEDAwEHAwUBAAAAAAAAAAEAAhEDEjEhBAUTQVFhcRQzgSIyYpHwwf/aAAwDAQACEQMRAD8AwLvebhe7itc7mrxDxwMnObsAexSh7FD2CvQaNFtNtrRovO9orvqPLidVTgn6hUqg1V2zWR/erkjbLY3Bd6vlqSkhJwKJzeY4lL6Sj71HVqsptudoApKNJ9R1rdSVqfL/AMT8FxnBpauC5njxDXbweOW/Ts24x/z36d6g9bSmPytwc9JiFP6GtE/jdkY6xMrFZMHT5yRqyandOVJ1oIkFQ5oDIYKUBEYAJqy97WiToFWY17jAklbXy78bcFxnIHmrZpx0G25Y5TpjbjH544z0mareuoTFzf7vhWfQbRE2u/u2VivWDpi5O1etTtXKcbEFiCmcshkElMACEgM1ZY9rhI1CrPa9pgyCgQT9QpybqrlovNwslxRudsV4d43GSHL2EPcpg9yj7hUVai2o21w0U+z1303hwOqzwN0CnSmlq7lRKLUxvgS+QS8apNlHTtI7kp9LRAQBusYiShpc+YJAhZwACj5hmQjrk74bNGYGn75YWvuUgVok68uR0Of8TD8Unu7LwjzG5XEqTR+w4BRudusRwRJZExxySd3UqZ3JQAQEfMqI9OoTWVs9rqtrRqHTkRntTx+gtbab20rnHQtjBnHQ1In9lIC1ubehcEFrg2M9ZpmyWaEV0CoAfjsxOJQEe8BMdo7109S4t+kweuVytO0OlwkdMJ0bzcD8weWKcNyDl/JtDrVxOM5cP9Hl2nzevCOsbK5/nwJ14kzIx5zfPz8LouXHt04cWwc+MWR3j5SQXWKosooRMqJDmExUSZCUgCPpLmJjQHYJERrowubI1XjKllJauGN0GiUBq68aO2LpVm7SMg5QMJFUjhBimDuAhUQeCJGCrJpkGDlBypZSWq9bb/e7Xs5ZcHLHdG3hljo54zjlgITEjFRvptf9wB8qSm97PtJHhHa+LfFDTbwt4et+IUMuvqcqkzVP6lD4mDIxo6iPWmuoUzloMdk5taoMOInuqLK4PWLkjpk4Uauk51ronMmoWQxGDFgQkBipHNDhB1CjaS0yNCj8/vfM+a8wc80/n7j7/Th9Wc/R5e/bpTeG222Bb05J177rpN3XmgPbg9fOTunrhR06UjYuscyihoDEJMaRGACKc1oaIGgTXEuMnUoGVOlNtRmbR2+dJM2iRl3K5gIkkQJMYw9gAKQvAEnASimSYGV958efuG5/rof4rP3P7A8laG9/fPgJeVqLLUoQpQhShClCFKEKUITD+A33Dbf11/8AFZe+PYPkLU3R748Ff//Z";
resourceMimeType[40] = "image/jpeg"; resourceBase64Data[40] = "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAYEBAQFBAYFBQYJBgUGCQsIBgYICwwKCgsKCgwQDAwMDAwMEAwODxAPDgwTExQUExMcGxsbHCAgICAgICAgICD/2wBDAQcHBw0MDRgQEBgaFREVGiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICD/wAARCAAZAEgDAREAAhEBAxEB/8QAHAAAAgEFAQAAAAAAAAAAAAAAAAQFAQIDBgcI/8QALhAAAgECBQICCgMAAAAAAAAAAQIDAAQFERITIQYiFDEHFjVBU2FygZKxJCVR/8QAFAEBAAAAAAAAAAAAAAAAAAAAAP/EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhEDEQA/APR8KpIu9OBJLJyS3P2FBk2rX4KfiKCLxrH8BwZ7VL6KTXes0dqtvZ3F0WdF1lcreKXI6AWyPmAT7jQL4R1j0Ti728Vhf2j3V0u5b2T5Q3TIV3A3h5Qk2Rj7wdPK9w45oJi4ayggkneDNIlLsI4jI+SjM6UQM7H/AAKCT7qCPHUXSjPpW7tGHh5LsyqUaJYIVhkeRpB2KAl1E/J5VgRxQSm1a/BT8RQG1a/BT8RQY5lSNd6ACOWPkFePsaBeKXKJB8hQX71BpXpMW9ulwK3skumuBftNuWsV0+kLZzxjVJay2hj1yTIgLToOcydIag1r0bPunAreb+Nt+FxOJm7hI4wJMPW1DJqjEpjVrooX1iIodPL7YdA60xVMO6VxTEGM+dnA1wnhSyy7kXemRVZchrA1akZMs9YKZig5B1L0/jsHrJOnir+XBoolbGA0itvW2F2UrTn+0tsn3II5SfDynMKc3yAAd53qA3qCyWXOJx8jQK6mTscaWXgg0FN6gN6gUgw7CreyjsbezghsoWEkVrHEixI6ybqsqAaQRJ3g5efPnQMTrBcQSW9wizQTKY5YpAGR0YZMrKeCCPMUCl9g+B38bx32H213HJKJ5EnhjkDSqm2JCGBzYRgLn55cUD29QG9QV1M/Yg1M3AAoGMc9oN9I/VBH0BQFAUBQFAUEhgftBfpP6oP/2Q==";
}
</script>
<meta name="savepage-url" content="http://blog.csdn.net/ruglcc/article/details/7814546">
<meta name="savepage-title" content="Makefile经典教程(掌握这些足够) - CSDN博客">
<meta name="savepage-date" content="Mon Nov 06 2017 09:25:49 GMT+0800 (CST)">
<meta name="savepage-state" content="Current State; Used page loader; Removed unsaved URLs; Max frame depth = 2; Max resource size = 50MB;">
<meta name="savepage-version" content="7.5">
</head>
<body><div class="switchDOM " data-poputype="feed" data-feed-show="false" style="height: 35px; background: rgb(250, 250, 250) none repeat scroll 0% 0%; box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.1); margin-bottom: 1px;">                      <div class="switch-text" style="padding-left:161.23333740234375px;padding-right:16px;"><span style="line-height:35px;font-size: 14px;color: #4F4F4F;">CSDN新首页上线啦，邀请你来立即体验！</span>                        <div class="switch-bottom csdn-tracking-statistics" style="float:right">                          <a class="switch-old switch-activation" href="javascript:void(0);" style="padding: 5px 10px; line-height: 35px; font-size: 12px; display: none;" target="_self">旧版</a>                          <a class="switch-new switch-activation" href="javascript:void(0);" style="padding-bottom: 5px;padding-top: 5px;line-height:35px;font-size:12px;padding-left:10px;padding-right:10px;" target="_self">立即体验</a>                        </div>                      </div>                      <style>                      .switch-old,.switch-new,.switch-new:link,.switch-new:visited,.switch-old:link,.switch-old:visited{color:#999;}                      body .switch-activation{border-radius: 16px;background-color: #5B5B5B;color:#fff !important}                      body .switch-old:hover,body .switch-new:hover{color: #4F4F4F;}                      body .switch-activation:hover{color:#999;}                       </style>                    </div><div style="visibility: hidden; overflow: hidden; position: absolute; top: 0px; height: 1px; width: auto; padding: 0px; border: 0px none; margin: 0px; text-align: left; text-indent: 0px; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal;"><div id="MathJax_Hidden"></div></div><div id="MathJax_Message" style="display: none;"></div><svg aria-hidden="true" style="position: absolute; width: 0px; height: 0px; overflow: hidden;"><symbol id="icon-xiajiantou" viewBox="0 0 1024 1024"><path d="M328.208 346.062h368.494c20.393 0 36.887 16.366 36.887 36.757 0 9.484-3.637 18.056-9.483 24.55L541.873 650.522c-12.211 16.105-35.2 19.484-51.438 7.275-2.859-2.08-5.324-4.547-7.274-7.275L298.853 404.772c-12.08-16.106-8.83-39.225 7.404-51.306 6.626-5.066 14.289-7.404 21.95-7.404z"></path></symbol><symbol id="icon-shouji" viewBox="0 0 1024 1024"><path d="M537.754 795.889c-26.41 0-47.893 21.478-47.893 47.892s21.484 47.893 47.893 47.893 47.892-21.479 47.892-47.893-21.483-47.892-47.892-47.892z"></path><path d="M774.697 42.071H300.815c-39.864 0-72.3 32.43-72.3 72.3v795.264c0 39.869 32.43 72.3 72.3 72.3h473.872c39.87 0 72.3-32.431 72.3-72.3v-795.27c0.004-39.864-32.426-72.294-72.29-72.294zM300.815 90.266h473.872a24.125 24.125 0 0 1 24.1 24.1v595.809H276.72v-595.81a24.125 24.125 0 0 1 24.094-24.1z m473.882 843.463H300.815a24.125 24.125 0 0 1-24.1-24.1V762.501h522.072V909.63a24.115 24.115 0 0 1-24.09 24.1z"></path></symbol><symbol id="icon-tianxie" viewBox="0 0 1024 1024"><path d="M121.905 780.19h780.19v97.524h-780.19V780.19zM823.296 298.496l-68.974-68.974-344.795 344.796-34.475 103.448 103.424-34.475zM875.008 246.76l17.237-17.238-68.949-68.949-17.262 17.237-17.237 17.238 68.974 68.973z"></path></symbol><symbol id="icon-sousuo" viewBox="0 0 1024 1024"><path d="M1023.972002 964.002812l-59.981188 59.981189-271.443276-271.459276c-166.600191 136.489602-412.812649 126.986048-568.309361-28.494664-165.624236-165.624236-165.624236-434.187647 0-599.859881 165.624236-165.592238 434.187647-165.592238 599.827883 0 155.52871 155.52871 164.984266 401.789166 28.462666 568.389356L1023.972002 964.002812zM663.364906 184.007375c-132.585785-132.585785-347.327719-132.761777-479.705514-0.43198-132.329797 132.345796-132.121807 347.119729 0.463978 479.705514s347.375717 132.793775 479.705514 0.41598c132.329797-132.281799 132.169805-347.10373-0.463978-479.689514z"></path></symbol><symbol id="icon-guanbi" viewBox="0 0 1024 1024"><path d="M1002.211316 933.90818c24.46369 24.46369 29.007633 59.583246 10.159871 78.447007-18.863761 18.863761-53.983317 14.303819-78.447007-10.159871L21.807724 90.09486C-2.655966 65.631169-7.199909 30.495614 11.647853 11.647853c18.863761-18.863761 53.983317-14.303819 78.447007 10.159871L1002.211316 933.90818z"></path><path d="M933.92418 21.807724C958.38787-2.655966 993.507426-7.199909 1012.371187 11.647853c18.863761 18.863761 14.303819 53.983317-10.159871 78.447007L90.09486 1002.211316c-24.46369 24.46369-59.583246 29.007633-78.447007 10.159871-18.847761-18.863761-14.303819-53.983317 10.159871-78.463007L933.92418 21.807724z"></path></symbol><symbol id="icon-caidan" viewBox="0 0 1024 1024"><path d="M0 132.8a48.496 48.496 0 0 0 48.496 48.496h927.008a48.496 48.496 0 1 0 0-96.992H48.496A48.496 48.496 0 0 0 0 132.8s0-26.784 0 0zM0 512.016a48.48 48.48 0 0 0 48.48 48.48h927.04a48.48 48.48 0 0 0 0-96.96H48.48A48.48 48.48 0 0 0 0 512.016s0-26.784 0 0zM0 891.2a48.496 48.496 0 0 0 48.496 48.496h927.008a48.496 48.496 0 1 0 0-96.992H48.496A48.496 48.496 0 0 0 0 891.2s0-26.784 0 0z"></path></symbol><symbol id="icon-yonghudenglu" viewBox="0 0 1024 1024"><path d="M1022.26704 962.432c-43.888-157.584-162.16-281.216-312.064-340.144 92.8-61.376 153.92-164.496 153.92-281.168C864.12304 153.04 706.04304 0 511.70704 0 317.35504 0 159.19504 153.04 159.19504 341.136c0 116.704 61.152 219.84 154.064 281.184C164.13904 681.024 46.18704 803.792 1.80304 960.16c-7.344 26.016 8.464 52.864 35.36 60.032a52.016 52.016 0 0 0 38.4-4.608 49.072 49.072 0 0 0 23.712-29.568c50.768-178.96 220.352-303.92 412.448-303.92 193.04 0 362.848 125.712 412.944 305.744 7.296 26.048 34.992 41.456 61.952 34.48 26.912-7.04 42.88-33.824 35.648-59.888zM260.25104 341.136c0-134.256 112.816-243.424 251.472-243.424 138.576 0 251.328 109.184 251.328 243.424 0 133.904-112.768 242.864-251.328 242.864-138.672 0-251.472-108.976-251.472-242.864z m0 0"></path></symbol><symbol id="toolbar-csdnlogo" viewBox="0 0 1024 1024"><path d="M533.941333 419.264c14.709333-1.621333 37.290667-3.264 68.352-3.264 51.872 0 93.802667 9.152 119.776 28.416 23.338667 17.952 38.858667 47.008 34.56 89.130667-3.978667 39.189333-24.042667 66.634667-53.312 83.594666C676.544 633.152 642.837333 640 592.106667 640c-29.888 0-58.421333-1.642667-80.106667-4.896l21.941333-215.84z m42.869334 172.938667c4.981333 0.992 11.562667 1.973333 24.533333 1.973333 51.882667 0 88.469333-25.877333 92.16-62.24 5.333333-52.554667-27.125333-70.944-81.802667-70.624-7.072 0-16.917333 0-22.133333 0.970667L576.8 592.213333h0.010667z m223.498666-164.704c210.954667-39.872 229.162667 31.776 222.645334 95.189333L1010.656 640h-66.944l11.210667-106.986667c2.421333-23.562667 17.504-69.653333-55.338667-67.914666-25.184 0.608-37.706667 4.064-37.706667 4.064s-2.186667 28.469333-4.832 49.514666L844.32 640H778.666667l13.024-119.573333" fill="#231916"></path><path d="M226.634667 632.682667c-12.373333 4.341333-38.037333 7.317333-73.909334 7.317333C49.6 640-6.048 590.933333 0.522667 526.090667 8.416 448.810667 90.858667 405.333333 181.141333 405.333333c34.976 0 55.552 2.858667 74.858667 7.637334l-6.208 52.064c-12.821333-4.384-42.890667-8.405333-67.232-8.405334-53.141333 0-98.250667 16.042667-103.424 66.762667-4.608 45.354667 27.061333 67.04 86.816 67.04 20.8 0 51.477333-3.018667 65.653333-7.370667l-4.992 49.6 0.021334 0.021334z" fill="#C92027"></path><path d="M272.714667 580.021333c19.285333 6.762667 59.488 13.504 92 13.504 35.029333 0 54.528-9.333333 56.096-23.797333 1.418667-13.205333-12.928-14.986667-52.490667-24.010667-54.666667-12.896-89.546667-32.842667-86.133333-64.704C286.176 443.989333 337.685333 416 416.725333 416c38.56 0 75.914667 2.613333 95.274667 8.714667l-6.656 46.666666c-12.565333-4.202667-60.672-10.037333-93.205333-10.037333-32.992 0-50.069333 9.973333-51.253334 20.917333-1.493333 13.845333 15.658667 14.485333 58.528 25.450667 58.026667 14.154667 83.402667 34.090667 80.085334 64.992C495.605333 609.109333 449.258667 640 356.714667 640c-38.528 0-71.744-6.762667-90.048-13.525333l6.048-46.453334z" fill="#231916"></path></symbol><symbol id="icon-morentouxiang" viewBox="0 0 1024 1024"><path d="M512 512m-512 0a512 512 0 1 0 1024 0 512 512 0 1 0-1024 0Z" fill="#A0C3FF"></path><path d="M691.2 887.466667c-55.466667-25.6-123.733333-51.2-123.733333-51.2v-38.4c68.266667-25.6 119.466667-89.6 132.266666-166.4 12.8-4.266667 38.4-17.066667 46.933334-55.466667l8.533333-46.933333s4.266667-59.733333-42.666667-46.933334c4.266667-38.4 4.266667-81.066667 4.266667-115.2-4.266667-64-89.6-98.133333-89.6-98.133333l12.8-17.066667s-42.666667-12.8-59.733333-4.266666l12.8-29.866667s-85.333333 0-132.266667 38.4h-4.266667v-17.066667s-145.066667 21.333333-140.8 243.2c-46.933333-12.8-42.666667 46.933333-42.666666 46.933334l8.533333 46.933333c4.266667 38.4 29.866667 51.2 46.933333 55.466667 12.8 81.066667 64 145.066667 132.266667 166.4v38.4s-68.266667 29.866667-123.733333 51.2c-29.866667 12.8-59.733333 34.133333-81.066667 59.733333 68.266667 51.2 157.866667 76.8 256 76.8s187.733333-25.6 264.533333-72.533333c-21.333333-29.866667-51.2-46.933333-85.333333-64z" fill="#4374E0"></path></symbol><symbol id="icon-icon_boke" viewBox="0 0 1024 1024"><path d="M512 1024C229.248 1024 0 794.752 0 512S229.248 0 512 0s512 229.248 512 512-229.248 512-512 512z m298.667-256H213.333v42.667h597.334V768z m-21.334-448L704 234.667 341.333 597.333l-42.666 128 128-42.666L789.333 320z"></path></symbol><symbol id="icon-icon_gitchatx" viewBox="0 0 1024 1024"><path d="M810.667 533.333v-64h-384v85.334h298.666v128h85.334V533.333zM256 810.667h426.667v-85.334h-384V298.667h426.666V384h85.334V213.333H213.333v597.334H256zM512 1024C229.248 1024 0 794.752 0 512S229.248 0 512 0s512 229.248 512 512-229.248 512-512 512z m213.333-298.667v85.334h85.334v-85.334h-85.334z"></path></symbol><symbol id="icon-guanbi1" viewBox="0 0 1024 1024"><path d="M512 1024A512 512 0 1 1 512 0a512 512 0 0 1 0 1024z m160-768L512 416 352 256l-96 96 160 160-160 160 96 96 160-160 160 160 96-96-160-160 160-160-96-96z"></path></symbol></svg><svg aria-hidden="true" style="position: absolute; width: 0px; height: 0px; overflow: hidden;"><symbol id="icon-read" viewBox="0 0 1024 1024"><path d="M988.16 240.64c0-5.12-2.56-11.52-6.4-15.36-2.56-2.56-51.2-55.04-135.68-81.92-32-10.24-64-15.36-96-15.36-97.28 0-181.76 46.08-235.52 84.48-55.04-39.68-139.52-85.76-236.8-85.76-32 0-65.28 5.12-96 15.36-84.48 26.88-131.84 81.92-134.4 84.48-3.84 3.84-5.12 8.96-5.12 15.36l0 546.56 60.16 71.68c3.84 8.96 12.8 15.36 21.76 15.36 3.84 0 7.68 0 10.24-2.56 19.2-5.12 120.32-29.44 199.68-29.44 37.12 0 64 5.12 79.36 15.36 7.68 5.12 11.52 10.24 12.8 16.64 0 12.8 10.24 23.04 23.04 23.04 1.28 0 8.96 0 21.76 0 24.32 0 61.44 0 98.56-2.56l0 0c1.28 0 3.84 0 5.12 0 10.24 0 20.48-7.68 23.04-17.92 2.56-10.24 7.68-16.64 17.92-23.04 16.64-8.96 42.24-14.08 76.8-14.08 78.08 0 171.52 24.32 198.4 32 3.84 1.28 7.68 2.56 11.52 2.56 0 0 0 0 0 0 8.96 0 17.92-5.12 21.76-14.08l64-72.96L988.16 241.92 988.16 240.64zM88.32 744.96 88.32 250.88c14.08-14.08 52.48-46.08 107.52-64 26.88-8.96 53.76-12.8 81.92-12.8 70.4 0 142.08 26.88 213.76 79.36l0 477.44c-38.4-23.04-88.32-34.56-149.76-34.56-32 0-66.56 3.84-102.4 10.24C179.2 715.52 124.16 733.44 88.32 744.96zM893.44 824.32c-20.48-5.12-61.44-15.36-106.24-23.04-35.84-5.12-66.56-7.68-94.72-7.68-43.52 0-76.8 6.4-101.12 20.48-15.36 8.96-26.88 20.48-33.28 34.56-33.28 1.28-65.28 2.56-87.04 2.56-1.28 0-2.56 0-3.84 0-6.4-12.8-15.36-24.32-29.44-32-23.04-15.36-58.88-21.76-106.24-21.76-76.8 0-165.12 19.2-200.96 28.16l-29.44-35.84c51.2-17.92 148.48-47.36 240.64-47.36 70.4 0 122.88 17.92 153.6 52.48l0 0c2.56 2.56 2.56 2.56 2.56 2.56l1.28 1.28c0 0 1.28 1.28 1.28 1.28 0 0 1.28 1.28 1.28 1.28l1.28 0c0 0 2.56 1.28 2.56 1.28l1.28 0c0 0 1.28 0 1.28 0 0 0 1.28 0 1.28 0l2.56 0c0 0 1.28 0 1.28 0 0 0 2.56 0 2.56 0 0 0 1.28 0 1.28 0 0 0 2.56-1.28 2.56-1.28 0 0 1.28 0 1.28 0 0 0 1.28 0 1.28-1.28 0 0 1.28 0 1.28 0 0 0 1.28 0 1.28-1.28 0 0 1.28 0 1.28 0l2.56-2.56 0 0c30.72-37.12 81.92-56.32 152.32-56.32 39.68 0 122.88 6.4 240.64 49.92L893.44 824.32zM940.8 744.96c-35.84-14.08-90.88-32-152.32-43.52-37.12-6.4-71.68-10.24-103.68-10.24-60.16 0-110.08 12.8-148.48 37.12L536.32 253.44c70.4-51.2 142.08-78.08 212.48-78.08 28.16 0 55.04 3.84 81.92 12.8 56.32 17.92 94.72 49.92 110.08 64L940.8 744.96z"></path></symbol><symbol id="icon-fanhuidingbu" viewBox="0 0 1024 1024"><path d="M527.072 190.496a21.28 21.28 0 0 0-30.176 0l-155.488 155.488a21.376 21.376 0 0 0 30.176 30.176L512 235.744l140.384 140.384a21.28 21.28 0 0 0 30.208 0 21.376 21.376 0 0 0 0-30.176l-155.52-155.456zM114.336 586.176h91.264V819.2h42.688v-233.024h91.264v-42.656H114.336v42.656z m460.576-42.688h-113.056a53.248 53.248 0 0 0-53.344 53.344v168.992a53.248 53.248 0 0 0 53.344 53.344h113.056a53.248 53.248 0 0 0 53.344-53.344v-168.992a53.248 53.248 0 0 0-53.344-53.344z m10.688 222.368a10.464 10.464 0 0 1-3.136 7.552 10.464 10.464 0 0 1-7.552 3.136h-113.056a10.464 10.464 0 0 1-7.552-3.136 10.464 10.464 0 0 1-3.136-7.552v-168.992c0-2.016 0.544-4.96 3.136-7.552a10.464 10.464 0 0 1 7.552-3.136h113.056c2.016 0 4.96 0.544 7.552 3.136a10.464 10.464 0 0 1 3.136 7.552v168.992z m308.448-206.72a53.248 53.248 0 0 0-37.728-15.616h-146.304V819.2h42.656v-120.928h103.648a53.248 53.248 0 0 0 53.344-53.344v-48.096c0-13.632-5.216-27.296-15.616-37.696z m-27.04 85.792a10.464 10.464 0 0 1-3.136 7.552 10.464 10.464 0 0 1-7.552 3.136h-103.648v-69.408h103.648c2.016 0 4.96 0.544 7.552 3.136a10.464 10.464 0 0 1 3.136 7.552v48.032z" fill=""></path><path d="M942.08 51.2c16.928 0 30.72 13.792 30.72 30.72v860.16c0 16.928-13.792 30.72-30.72 30.72H81.92a30.784 30.784 0 0 1-30.72-30.72V81.92c0-16.928 13.792-30.72 30.72-30.72h860.16m0-51.2H81.92A81.92 81.92 0 0 0 0 81.92v860.16A81.92 81.92 0 0 0 81.92 1024h860.16A81.92 81.92 0 0 0 1024 942.08V81.92A81.92 81.92 0 0 0 942.08 0z" fill=""></path></symbol><symbol id="icon-shoucang" viewBox="0 0 1024 1024"><path d="M865.6 1024c-27.2 0-51.2-11.2-68.8-32L520 704 243.2 992c-17.6 20.8-41.6 32-68.8 32-49.6 0-89.6-41.6-89.6-91.2V150.4C84.8 67.2 150.4 0 232 0h576c81.6 0 147.2 67.2 147.2 150.4v782.4c0 49.6-40 91.2-89.6 91.2zM520 611.2l326.4 339.2c4.8 6.4 12.8 9.6 19.2 9.6 14.4 0 25.6-12.8 25.6-27.2V150.4c0-48-36.8-86.4-83.2-86.4h-576c-46.4 0-83.2 38.4-83.2 86.4v782.4c0 14.4 11.2 27.2 25.6 27.2 8 0 14.4-3.2 19.2-9.6l1.6-1.6 324.8-337.6z" fill=""></path></symbol><symbol id="icon-mulu" viewBox="0 0 1024 1024"><path d="M36.416 201.472h57.44c20.128 0 36.448-18.88 36.448-53.664C130.336 112.992 114.016 96 93.856 96H36.416C16.288 96-0.032 112.992-0.032 147.808c0 34.784 16.288 53.664 36.448 53.664z m262.848 0h678.08c25.792 0 46.656-18.88 46.656-53.664C1023.968 112.992 1003.072 96 977.312 96H299.264c-25.792 0-46.656 16.992-46.656 51.808 0 34.784 20.864 53.664 46.656 53.664z m-203.136 255.296H35.552c-18.912 0-34.208 20.8-34.208 51.552 0 30.816 15.328 54.752 34.208 54.752h60.576c18.912 0 39.328-23.936 39.328-54.752-0.032-30.72-20.416-51.552-39.328-51.552z m881.184 0H299.264c-25.76 0-46.656 20.8-46.656 51.552 0 30.816 20.864 54.752 46.656 54.752h678.08c25.792 0 46.656-23.936 46.656-54.752-0.032-30.72-20.896-51.552-46.688-51.552zM97.248 819.712H38.912c-18.304 0-33.088 20.896-33.088 51.648 0 30.752 14.816 56.64 33.088 56.64h58.336c18.304 0 38.176-25.888 38.176-56.64s-19.872-51.648-38.176-51.648z m880.064 0H299.264c-25.76 0-46.656 20.896-46.656 51.648 0 30.752 20.864 55.168 46.656 55.168h678.08c25.792 0 46.656-24.416 46.656-55.168-0.032-30.752-20.896-51.648-46.688-51.648z" fill=""></path></symbol><symbol id="icon-xinlang" viewBox="0 0 1024 1024"><path d="M429.664 928C217.024 928 0 824.896 0 654.624c0-88.864 56.032-191.424 152.608-288.224C281.664 236.896 432 178.432 488.576 235.168c25.152 24.672 27.424 68.192 11.424 119.744-8 26.336 24.608 11.456 24.608 12.032 104.032-44.16 194.848-46.432 228 1.12 17.792 25.216 16 60.736 0 101.984-7.456 18.944 2.336 21.76 16.544 26.336 58.912 18.304 124.032 62.464 124.032 140.416-0.096 129.024-185.312 291.2-463.52 291.2z m-39.424-465.344c-169.696 17.216-297.632 120.928-286.816 232.672 10.816 111.744 157.088 188.512 326.848 171.936 169.696-17.216 297.632-120.864 286.752-232.672-10.816-111.744-157.088-188.512-326.784-171.936z m-69.728 356.448c-81.728-26.336-116.032-107.104-80.544-179.936 35.424-71.04 126.304-111.2 206.848-90.528 84 21.76 126.304 100.896 91.968 177.664-34.304 77.92-133.664 120.288-218.272 92.8z m45.696-153.024c-25.696-10.912-60 0.544-76 25.76-16.544 25.792-8.544 56.192 17.152 68.224 26.24 12.032 61.664 0.544 78.272-25.792 16.064-26.368 7.456-56.704-19.424-68.192z m65.184-26.944a25.152 25.152 0 0 0-28.608 10.912c-5.728 10.304-2.88 21.216 7.456 25.792a24.32 24.32 0 0 0 29.152-10.848c5.696-10.368 2.24-21.856-8-25.856z m579.36-187.392a38.912 38.912 0 0 1-49.12 25.216 39.904 39.904 0 0 1-25.76-49.28 192.736 192.736 0 0 0-40.032-189.152 192.448 192.448 0 0 0-183.424-59.552 39.68 39.68 0 0 1-46.848-30.4 39.136 39.136 0 0 1 30.272-46.432 270.112 270.112 0 0 1 258.304 83.68 272.192 272.192 0 0 1 56.608 265.92z m-132.544-43.008a33.6 33.6 0 1 1-64.032-20.672 65.024 65.024 0 0 0-13.696-63.584 64.128 64.128 0 0 0-61.12-20.032 33.28 33.28 0 0 1-40.032-25.76 33.6 33.6 0 0 1 25.696-40.128 130.4 130.4 0 0 1 125.664 40.704 132.16 132.16 0 0 1 27.52 129.472z" fill="#707070"></path></symbol><symbol id="icon-sousuo" viewBox="0 0 1024 1024"><path d="M944.513789 1024a77.19975 77.19975 0 0 1-55.325422-23.345409l-210.780262-210.204622A431.538289 431.538289 0 0 1 433.185369 866.658339C194.134776 866.658339 0.52778 673.051343 0.52778 434.00075S194.134776 1.343161 433.185369 1.343161c239.082573 0 432.657589 193.606996 432.657589 432.657589 0 87.273454-26.41549 173.299688-76.17639 245.222735l210.780263 210.812243c14.135166 14.167146 22.737789 34.378513 22.737789 55.293441a79.182511 79.182511 0 0 1-78.670831 78.670831zM433.185369 158.652842c-151.777139 0-275.347908 123.538788-275.347907 275.347908s123.538788 275.347908 275.347907 275.347907 275.347908-123.538788 275.347908-275.347907-123.538788-275.347908-275.347908-275.347908z"></path></symbol><symbol id="icon-QQ" viewBox="0 0 1024 1024"><path d="M149.9071 430.705026c0-15.993503 10.299816-41.679068 19.959892-53.674195-0.607753-14.873957 5.693687-45.133664 17.113047-54.889701 0-105.685065 81.662824-238.814981 177.080062-284.428451 58.85609-27.98863 120.495049-37.680692 185.044825-37.680692 50.283572 0 105.109299 11.995127 151.938275 31.379252 134.217474 56.521038 164.541155 161.694312 193.073564 295.911786l0.511792 2.846843c16.601256 25.141786 31.443226 54.889701 31.443226 85.661201 0 15.38575-10.299816 30.86746-10.299815 44.589885 0 1.119545 3.454597 5.693687 3.966388 6.845219 49.100053 72.578515 93.689938 151.426483 93.689939 241.661825 0 19.959891-10.811608 89.72355-42.862587 89.72355-22.294943 0-46.828976-54.281948-54.889701-69.123919-0.511792-0.543779-1.119545-0.543779-1.727299-0.543779l-2.846843 2.239091c-18.328554 47.372755-38.288445 91.96264-75.457346 127.404242 32.594758 31.379252 85.117421 28.532409 94.809484 82.814356-2.846843 6.30144-1.727298 13.146659-6.30144 19.384126-32.594758 49.100053-119.95127 55.401493-172.505919 55.401493-69.667697 0-126.25271-18.328554-191.954019-37.680693-13.754412-3.966389-34.322057-1.727298-49.164027-3.454596-34.833849 38.288445-119.95127 48.556274-169.051323 48.556274-43.374379 0-211.338144-2.846843-211.338144-77.088683 0-31.987005 6.909193-41.135289 29.140162-61.702933 17.720801-3.454597 30.86746-13.146659 51.435104-14.266204 2.846843 0 5.117921-0.607753 8.028739-1.119546 0.543779-0.511792 1.119545-0.511792 1.119545-2.23909l-1.119545-1.727298c-39.407991-9.148284-94.809484-108.563896-103.382001-149.699185l-2.846844-1.663324c-3.966389 0-5.693687 8.572517-6.845219 11.419361-12.538906 29.140162-42.254834 60.583388-75.361384 63.97401H29.923843c-4.574142 0-2.846843-4.574142-6.30144-5.693687a139.399369 139.399369 0 0 1-13.146659-57.128791c0-114.257583 54.889701-198.799238 143.973511-266.195858a77.152657 77.152657 0 0 1-4.542155-29.811889z" fill="#707070"></path></symbol><symbol id="icon-weixin" viewBox="0 0 1024 1024"><path d="M692.992 347.968c-172 0-308.032 128.192-308.032 285.856 0 26.464 4 51.872 11.488 75.808-11.328 0.992-22.688 1.472-34.048 1.472-45.536 0-81.504-8.96-126.976-17.984l-126.496 63.36 36.032-108.768c-90.56-63.328-144.992-145.184-144.992-244.384C-0.032 231.232 162.976 96 362.432 96c178.048 0 334.56 108.224 365.536 253.952a260.992 260.992 0 0 0-34.976-1.984zM244.416 249.728c-27.008 0-54.528 17.984-54.528 45.44 0 26.912 27.456 44.896 54.528 44.896 27.456 0 45.536-17.984 45.536-44.896 0-27.52-18.016-45.44-45.536-45.44z m652.544 588L924.416 928l-99.52-54.368c-36.448 8.96-72.992 18.432-108.96 18.432-172.512 0-308.032-117.728-308.032-262.432s135.488-262.432 308.032-262.432c162.944 0 308.032 117.728 308.032 262.432 0.064 81.44-53.984 153.792-127.008 208.096zM498.464 249.728c-27.456 0-54.528 17.984-54.528 45.44 0 26.912 27.008 44.896 54.528 44.896 27.008 0 45.024-17.984 45.024-44.896-0.032-27.52-18.048-45.44-45.024-45.44z m117.472 262.304c-18.016 0-35.968 17.984-35.968 35.872 0 18.432 18.016 36.48 35.968 36.48 27.456 0 45.536-17.984 45.536-36.48-0.064-17.888-18.016-35.872-45.536-35.872z m199.584 0c-18.016 0-36.032 17.984-36.032 35.872 0 18.432 18.016 36.48 36.032 36.48 26.976 0 45.536-17.984 45.536-36.48-0.128-17.888-18.528-35.872-45.536-35.872z" fill="#707070"></path></symbol><symbol id="icon-fenxiang" viewBox="0 0 1024 1024"><path d="M753.344 615.456a171.84 171.84 0 0 0-145.024 79.648l-184.544-105.536c11.968-23.36 19.264-49.408 19.264-77.568 0-17.344-3.264-33.696-8.096-49.536l191.968-109.728a171.392 171.392 0 0 0 126.368 55.872c95.072 0 172.288-77.152 172.288-172.288S848.384 64 753.312 64a172.256 172.256 0 0 0-172.288 172.288c0 17.344 3.328 33.76 8.032 49.536l-191.968 109.696a171.328 171.328 0 0 0-126.304-55.84 172.288 172.288 0 1 0-0.064 344.576 171.008 171.008 0 0 0 104.064-35.776l-0.672 1.184 208.768 119.328c-0.8 6.112-1.856 12.192-1.856 18.752a172.32 172.32 0 0 0 344.576 0 172.224 172.224 0 0 0-172.256-172.288z m0-482.592a103.52 103.52 0 0 1 103.456 103.392 103.456 103.456 0 0 1-206.912 0 103.456 103.456 0 0 1 103.456-103.392zM270.752 615.456A103.328 103.328 0 0 1 167.424 512a103.36 103.36 0 1 1 206.72 0 103.36 103.36 0 0 1-103.392 103.456z m482.592 275.744a103.456 103.456 0 1 1 0-206.912 103.456 103.456 0 0 1 0 206.912z" fill=""></path></symbol><symbol id="icon-erweima" viewBox="0 0 1024 1024"><path d="M466.112 464.896H1.216V0h464.896v464.896z m0 557.888H1.216V557.888h464.896v464.896zM373.12 371.936V92.992H94.176v278.944h278.944z m0 557.152V650.88H94.176v278.24h278.944zM280.16 278.944H187.168V185.952h92.992v92.992z m0 557.888H187.168v-92.992h92.992v92.992zM1024 464.896H559.104V0H1024v464.896z m0 371.936h-278.944v-92.992h-92.992v278.944h-92.992V557.888h278.944v92.992h92.992v-92.992H1024v278.944z m-92.992-464.896V92.992h-278.944v278.944h278.944z m-92.96-92.992h-92.992V185.952h92.992v92.992z m0 743.84h-92.992v-92.992h92.992v92.992z m185.952 0h-92.992v-92.992H1024v92.992z"></path></symbol><symbol id="icon-daima" viewBox="0 0 1024 1024"><path d="M376.192 683.104a10.592 10.592 0 0 1-15.264 0l-154.656-154.656a10.624 10.624 0 0 1 0-15.264l154.656-154.656c2.016-2.048 4.768-3.232 7.648-3.232s5.632 1.152 7.616 3.232l16.608 16.608a10.624 10.624 0 0 1 0 15.264L262.4 520.832l130.432 130.432a10.752 10.752 0 0 1 3.232 7.648c0 2.88-1.152 5.632-3.232 7.616l-16.64 16.576z m88.96 57.728a10.56 10.56 0 0 1-12.928 7.296l-20.576-5.632a10.752 10.752 0 0 1-7.296-13.28L548.16 300.832a10.56 10.56 0 0 1 12.928-7.328l20.576 5.632c5.632 1.664 8.96 7.648 7.296 13.28l-123.808 428.416z m187.2-57.728a10.624 10.624 0 0 1-15.296 0l-16.576-16.576a10.592 10.592 0 0 1 0-15.264l130.4-130.432L620.48 390.4a10.624 10.624 0 0 1 0-15.264l16.576-16.608a10.624 10.624 0 0 1 15.296 0l154.624 154.656a10.624 10.624 0 0 1 0 15.264l-154.624 154.656z" fill="#707070"></path></symbol><symbol id="icon-pinglun" viewBox="0 0 1025 1024"><path d="M256 364.512c-35.328 0-64 29.76-64 66.496 0 36.736 28.672 66.496 64 66.496 35.36 0 64-29.76 64-66.496 0-36.736-28.64-66.496-64-66.496z m256.032 0c-35.36 0-64 29.76-64 66.496 0 36.736 28.64 66.496 64 66.496 35.328 0 63.968-29.76 63.968-66.496 0-36.736-28.64-66.496-63.968-66.496z m255.968 0c-35.328 0-64 29.76-64 66.496 0 36.736 28.672 66.496 64 66.496s64-29.76 64-66.496c0.032-36.736-28.672-66.496-64-66.496zM896.032 32h-768C57.312 32 0 91.552 0 165.024v498.752c0 73.44 58.56 141.12 130.88 141.12h195.104c33.952 36.288 174.72 182.208 174.72 182.208a15.488 15.488 0 0 0 22.592 0s103.072-116.992 170.176-182.208h199.616c72.32 0 130.88-67.712 130.88-141.12V165.024C1024 91.552 966.688 32 896.032 32zM960 663.776c0 36.704-30.752 75.264-66.88 75.264h-196.32c-23.808 0-45.184 24.48-45.184 24.48l-137.824 143.232-137.824-143.232s-26.208-24.48-48.704-24.48H130.88C94.752 739.008 64 700.48 64 663.776V165.024c0-36.736 28.64-66.496 64-66.496h768c35.328 0 63.968 29.76 63.968 66.496v498.752z m0 0" fill=""></path></symbol><symbol id="icon-xihuan-" viewBox="0 0 1024 1024"><path d="M1020.81017 296c-14.4-85.6-61.6-152.8-141.6-200-45.6-27.2-97.6-41.6-148.8-41.6-66.4 0-128.8 24-176.8 68-15.2 13.6-28 28.8-41.6 43.2-40.8-49.6-81.6-80-129.6-96-84-28-168-17.6-245.6 32C45.61017 158.4-0.78983 240.8 0.01017 345.6c0.8 61.6 20.8 120 62.4 178.4 44.8 62.4 100 126.4 172.8 200.8 49.6 50.4 100.8 100 149.6 148l48 47.2c4 4 8.8 8 12.8 12.8l5.6 4.8c10.4 8.8 32 23.2 60 23.2 23.2 0 45.6-9.6 65.6-28.8 84-79.2 173.6-164.8 258.4-256.8 44-48 94.4-104 136-166.4 44.8-68 61.6-140 49.6-212.8m-92 184c-39.2 59.2-85.6 111.2-130.4 160-84 91.2-172.8 176-256 254.4-10.4 9.6-20.8 14.4-30.4 14.4-12 0-21.6-7.2-25.6-9.6l-4-4c-4-4-8-8-12.8-12l-48-47.2c-49.6-48-100.8-97.6-149.6-148-72-72.8-124-133.6-168-194.4-35.2-49.6-52.8-98.4-52.8-148.8 0-86.4 36.8-152 113.6-200.8 40.8-25.6 83.2-39.2 126.4-39.2 24.8 0 49.6 4 75.2 12.8 40 13.6 74.4 40 110.4 84.8 2.4 3.2 15.2 16.8 36 16.8 8.8 0 22.4-3.2 34.4-16.8l2.4-2.4c13.6-14.4 25.6-28.8 39.2-41.6 38.4-36 88-54.4 141.6-54.4 42.4 0 84.8 12 123.2 34.4 67.2 40 105.6 93.6 116.8 164 9.6 62.4-4 120-41.6 177.6" fill=""></path><path d="M512.01017 957.6c-27.2 0-48-13.6-58.4-22.4l-5.6-4.8c-4-4-8.8-8-12.8-12.8l-51.2-50.4c-48.8-47.2-98.4-96-147.2-144.8-72.8-74.4-128-137.6-172.8-200.8-40.8-57.6-60.8-115.2-61.6-176-0.8-104 44.8-185.6 136-243.2 48.8-30.4 100-46.4 152.8-46.4 29.6 0 60 4.8 90.4 15.2 48 16 88.8 46.4 128.8 95.2l1.6 2.4 1.6-2.4c12-13.6 26.4-28.8 40.8-43.2 48-43.2 110.4-67.2 176-67.2 51.2 0 102.4 14.4 148 41.6 79.2 47.2 126.4 113.6 140 198.4 12 72.8-4 143.2-48.8 210.4-40.8 62.4-91.2 118.4-135.2 166.4-84.8 92-174.4 177.6-258.4 256.8-20 18.4-41.6 28-64 28z m-220.8-855.2c-43.2 0-86.4 13.6-128 39.2-77.6 49.6-114.4 116-114.4 203.2 0 51.2 17.6 100 53.6 149.6 44 61.6 96 121.6 168 195.2 48 48.8 98.4 97.6 147.2 145.6l50.4 49.6 9.6 9.6 7.2 6.4c4 3.2 14.4 10.4 27.2 10.4 10.4 0 21.6-4.8 32-15.2 83.2-78.4 172-164 256-254.4 44.8-48.8 92-100.8 130.4-160 38.4-57.6 52-116 41.6-177.6-12-71.2-50.4-125.6-118.4-166.4-38.4-22.4-81.6-35.2-124-35.2-54.4 0-104 19.2-143.2 55.2-13.6 12.8-25.6 26.4-39.2 40.8l-2.4 3.2c-12 12.8-24 16-32.8 16-19.2 0-31.2-13.6-33.6-16-36-44.8-71.2-72-112-85.6-25.6-8.8-50.4-13.6-75.2-13.6z" fill=""></path></symbol><symbol id="icon-jubao" viewBox="0 0 1024 1024"><path d="M507.2 345.6c-20.8 0-38.4 17.6-38.4 38.4v264c0 22.4 17.6 38.4 38.4 38.4h8c20.8 0 38.4-17.6 38.4-38.4V384c0-22.4-17.6-38.4-38.4-38.4h-8zM454.4 788.8c0 14.4 6.4 30.4 16 40 11.2 11.2 25.6 16 40 16 14.4 0 30.4-6.4 40-16 11.2-11.2 16-25.6 16-40 0-14.4-6.4-30.4-16-40-11.2-11.2-25.6-16-40-16-14.4 0-30.4 6.4-40 16-9.6 11.2-16 25.6-16 40z" fill=""></path><path d="M102.4 966.4C46.4 966.4 0 921.6 0 864c0-17.6 4.8-33.6 12.8-48 0 0 0-1.6 1.6-1.6L422.4 108.8s0-1.6 1.6-1.6c19.2-30.4 52.8-49.6 88-49.6s68.8 19.2 88 49.6c0 0 0 1.6 1.6 1.6l409.6 705.6s0 1.6 1.6 1.6c8 14.4 12.8 32 12.8 48 0 56-46.4 102.4-102.4 102.4H102.4zM64 841.6c-1.6 0-1.6 0 0 0-4.8 8-6.4 16-6.4 24 0 25.6 20.8 44.8 44.8 46.4h817.6c25.6 0 46.4-20.8 46.4-46.4 0-8-1.6-16-6.4-22.4l-408-704s0-1.6-1.6-1.6C544 123.2 528 113.6 512 113.6s-32 8-40 22.4c0 0 0 1.6-1.6 1.6L64 841.6z" fill=""></path></symbol><symbol id="icon-dashang-" viewBox="0 0 1024 1024"><path d="M977.883349 705.071646c0 307.614317-400.867476 318.928354-459.700467 318.928354-4.684967 0-7.202739-0.063741-7.202739-0.063741s-2.517772 0.063741-7.202739 0.063741c-58.832991 0-459.700467-11.314037-459.700467-318.928354 0-331.963399 372.407096-488.638904 372.407097-488.638904S291.679054 172.355805 291.679054 78.847681c0-75.851852 185.582073-78.847681 215.317273-78.847681h7.967632c29.67146 0 215.317274 3.0277 215.317273 78.847681 0 93.508123-124.83685 137.55319-124.83685 137.55319s372.438967 156.707376 372.438967 488.670775zM582.210769 271.983069a60.235294 60.235294 0 0 1 3.314534-112.311734c16.700156-6.08727 77.317896-35.631248 84.074448-73.844009-17.911236-11.569001-75.979334-25.496421-154.572051-25.49642h-8.031373c-78.656458 0-136.660815 13.92742-154.572051 25.49642 6.820293 38.531466 68.202926 68.266667 84.074448 73.844009a60.235294 60.235294 0 0 1 3.314535 112.311734c-3.250794 1.402303-335.501027 145.967009-335.501027 433.152318 0 246.231684 332.855773 258.693059 399.592654 258.69306l5.577342-0.063741H512.733022l5.513601 0.063741c66.736881 0 399.592655-12.461376 399.592655-258.69306C917.775537 416.484034 585.557174 273.385372 582.210769 271.983069z m36.555493 386.971926a24.890881 24.890881 0 0 1 21.512605 37.256645 24.763399 24.763399 0 0 1-21.512605 12.397635h-84.010706v65.238967a24.85901 24.85901 0 1 1-49.65428 0v-65.238967h-79.96315a24.85901 24.85901 0 1 1 0-49.718021h79.96315v-50.737877h-82.002863a24.890881 24.890881 0 0 1-21.512605-37.256645 24.763399 24.763399 0 0 1 21.512605-12.397635h42.579022l-41.049237-41.112978a24.922751 24.922751 0 0 1 17.528789-42.451541c6.533458 0 12.907563 2.645254 17.52879 7.26648l70.178898 70.306381 70.178898-70.306381a24.85901 24.85901 0 0 1 35.057579 35.185061l-41.049238 41.112978h42.579023a24.85901 24.85901 0 1 1 0 49.718021h-81.939122v50.737877h84.074447z"></path></symbol><symbol id="icon-shouqi" viewBox="0 0 1024 1024"><path d="M906.592 828.768a40.288 40.288 0 0 1-57.152 0L512 491.36 174.592 828.768a40.416 40.416 0 0 1-57.216 0L11.936 723.904a40.96 40.96 0 0 1 0-57.792L483.392 195.232a40.288 40.288 0 0 1 57.152 0l471.52 470.88a40.96 40.96 0 0 1 0 57.792l-105.472 104.864z" fill="#707070"></path></symbol><symbol id="icon-youjiantou" viewBox="0 0 1024 1024"><path d="M704 512a22.56 22.56 0 0 0-6.656-15.136l-307.456-307.488a22.72 22.72 0 0 0-15.136-6.56 22.592 22.592 0 0 0-15.136 6.56L326.592 222.4a22.72 22.72 0 0 0-6.56 15.136c0 5.28 2.624 11.232 6.56 15.136L585.888 512l-259.328 259.328a22.72 22.72 0 0 0-6.56 15.136c0 5.952 2.624 11.232 6.56 15.136l33.024 33.024a22.688 22.688 0 0 0 15.136 6.56 22.592 22.592 0 0 0 15.136-6.56l307.488-307.488A22.432 22.432 0 0 0 704 512z" fill="#707070"></path></symbol><symbol id="icon-zuojiantou" viewBox="0 0 1024 1024"><path d="M320 512c0-5.28 2.688-11.232 6.656-15.136l307.456-307.488a22.72 22.72 0 0 1 15.136-6.56c5.28 0 11.232 2.624 15.136 6.56l33.024 33.024a22.72 22.72 0 0 1 6.56 15.136 22.592 22.592 0 0 1-6.56 15.136L438.112 512l259.328 259.328a22.72 22.72 0 0 1 6.56 15.136 21.312 21.312 0 0 1-6.56 15.136l-33.024 33.024a22.688 22.688 0 0 1-15.136 6.56 22.592 22.592 0 0 1-15.136-6.56l-307.488-307.488A22.432 22.432 0 0 1 320 512z" fill="#707070"></path></symbol><symbol id="icon-xiajiantou" viewBox="0 0 1024 1024"><path d="M512 704a22.56 22.56 0 0 0 15.136-6.656l307.488-307.456a22.72 22.72 0 0 0 6.56-15.136 22.592 22.592 0 0 0-6.56-15.136l-33.024-33.024a22.72 22.72 0 0 0-15.136-6.56 22.592 22.592 0 0 0-15.136 6.56L512 585.888l-259.328-259.328A22.72 22.72 0 0 0 237.536 320a21.312 21.312 0 0 0-15.136 6.56l-33.024 33.024a22.688 22.688 0 0 0-6.56 15.136c0 5.28 2.624 11.232 6.56 15.136l307.488 307.488A22.432 22.432 0 0 0 512 704z" fill="#707070"></path></symbol><symbol id="icon-shangjiantou" viewBox="0 0 1024 1024"><path d="M512 320c5.28 0 11.232 2.688 15.136 6.656l307.488 307.456a22.72 22.72 0 0 1 6.56 15.136 22.592 22.592 0 0 1-6.56 15.136l-33.024 33.024a22.72 22.72 0 0 1-15.136 6.56 22.592 22.592 0 0 1-15.136-6.56L512 438.112l-259.328 259.328a22.72 22.72 0 0 1-15.136 6.56 21.312 21.312 0 0 1-15.136-6.56l-33.024-33.024a22.688 22.688 0 0 1-6.56-15.136c0-5.28 2.624-11.232 6.56-15.136l307.488-307.488A22.432 22.432 0 0 1 512 320z" fill="#707070"></path></symbol><symbol id="icon-shanghuadong" viewBox="0 0 1024 1024"><path d="M512 0c282.336 0 512 229.664 512 512s-229.664 512-512 512S0 794.336 0 512 229.664 0 512 0z m0 955.744c244.672 0 443.744-199.072 443.744-443.744S756.672 68.256 512 68.256 68.256 267.328 68.256 512 267.328 955.744 512 955.744z" fill=""></path><path d="M307.2 409.6c8.736 0 17.472 3.36 24.16 9.952L512 600.256l180.64-180.704a34.144 34.144 0 0 1 48.256 48.256l-204.8 204.8a34.144 34.144 0 0 1-48.256 0l-204.8-204.8A34.144 34.144 0 0 1 307.2 409.6z" fill=""></path></symbol><symbol id="icon-xiahuadong" viewBox="0 0 1024 1024"><path d="M512 1024C229.664 1024 0 794.336 0 512S229.664 0 512 0s512 229.664 512 512-229.664 512-512 512z m0-955.744C267.328 68.256 68.256 267.328 68.256 512S267.328 955.744 512 955.744 955.744 756.672 955.744 512 756.672 68.256 512 68.256z" fill=""></path><path d="M716.8 614.4c-8.736 0-17.472-3.36-24.16-9.952L512 423.744l-180.64 180.704a34.144 34.144 0 0 1-48.256-48.256l204.8-204.8a34.144 34.144 0 0 1 48.256 0l204.8 204.8A34.144 34.144 0 0 1 716.8 614.4z" fill=""></path></symbol><symbol id="icon-bokezhuanjia" viewBox="0 0 1024 1024"><path d="M984.544 604.736l38.944-95.168-38.944-92.896V315.904L911.808 243.2l-39.744-94.848-93.248-38.144-71.232-71.264h-102.848L509.568 0l-92.896 38.944H315.904L243.2 111.648 148.352 151.424 110.208 244.672 38.944 315.904v102.816L0 513.888l38.944 92.928v100.768l72.704 72.704 39.776 94.848 93.248 38.144 71.232 71.264h102.848l95.136 38.944 92.928-38.944h100.768l72.704-72.736 94.848-39.744 38.144-93.248 71.264-71.232z" fill="#F0D04D"></path><path d="M685.92 197.888A1280.352 1280.352 0 0 0 228.768 878.176a662.72 662.72 0 0 0 44.96-16.096A1280.544 1280.544 0 0 1 688.032 253.536a649.792 649.792 0 0 0-2.112-55.648z" fill="#B18C25"></path><path d="M569.312 472a448.608 448.608 0 0 0 230.08-68.64 450.24 450.24 0 0 0-28.8-270.016C496.448 223.104 310.848 477.856 305.376 762.464c44.416 5.088 90.304 3.648 136.512-5.216 151.904-29.12 271.264-131.232 328.832-263.04a683.968 683.968 0 0 1-201.408-22.208z" fill="#FFFFFF"></path><path d="M356.512 775.616c-17.408 0-35.008-0.992-52.32-2.976l-9.248-1.056 0.192-9.312A686.4 686.4 0 0 1 767.392 123.648l8.832-2.912 3.712 8.544c13.728 31.552 23.936 64.416 30.336 97.76 11.36 59.36 11.072 119.36-0.864 178.368l-0.864 4.288-3.712 2.336a457.12 457.12 0 0 1-157.824 62.112c-3.296 0.64-6.592 1.216-9.888 1.792 43.872 7.04 88.608 9.76 133.216 8.032l16.288-0.64-6.528 14.944a461.856 461.856 0 0 1-423.584 277.344z m-40.672-22.368a441.632 441.632 0 0 0 438.72-248.384c-3.456 0.064-6.912 0.064-10.368 0.064-59.968 0-119.712-7.744-177.536-23.072l-70.336-18.624 72.736-1.504a436.896 436.896 0 0 0 221.12-64.736c10.592-55.008 10.56-110.88-0.032-166.144a443.392 443.392 0 0 0-25.344-84.8A666.112 666.112 0 0 0 315.84 753.248z" fill="#CFA41E"></path><path d="M375.68 775.616c-17.408 0-35.008-0.992-52.32-2.976l-9.248-1.056 0.192-9.312A686.496 686.496 0 0 1 786.56 123.616l8.832-2.912 3.712 8.544c13.728 31.52 23.936 64.416 30.336 97.76 11.36 59.328 11.072 119.36-0.864 178.368l-0.864 4.288-3.712 2.336a457.12 457.12 0 0 1-157.824 62.112c-3.296 0.64-6.592 1.216-9.888 1.792a682.848 682.848 0 0 0 133.216 8.064l16.288-0.64-6.528 14.944a461.856 461.856 0 0 1-423.584 277.344z m-40.704-22.368a441.632 441.632 0 0 0 438.72-248.384 694.976 694.976 0 0 1-187.872-23.008l-70.336-18.624 72.736-1.504a436.896 436.896 0 0 0 221.12-64.736 437.664 437.664 0 0 0-0.032-166.144 443.392 443.392 0 0 0-25.344-84.8 666.144 666.144 0 0 0-448.992 607.2z" fill="#B18C25"></path><path d="M770.592 133.344a450.24 450.24 0 0 1 28.8 270.016 447.424 447.424 0 0 1-230.08 68.64c30.592 8.096 61.888 14.112 93.696 17.888 35.36 4.224 71.36 5.696 107.712 4.32-57.568 131.776-176.928 233.92-328.832 263.04a450.976 450.976 0 0 1-136.512 5.216c5.472-284.608 191.072-539.36 465.216-629.12" fill="#FFFFFF"></path><path d="M356.512 775.616c-17.408 0-35.008-0.992-52.32-2.976l-9.248-1.056 0.192-9.312A686.4 686.4 0 0 1 767.392 123.648l28-2.912-15.424 8.544c13.728 31.52 23.936 64.416 30.336 97.76 11.36 59.328 11.072 119.36-0.864 178.368l-0.864 4.288-3.712 2.336a457.12 457.12 0 0 1-157.824 62.112c-3.296 0.64-6.592 1.216-9.888 1.792a682.848 682.848 0 0 0 133.216 8.064l16.288-0.64-6.528 14.944a461.856 461.856 0 0 1-423.616 277.312z m-40.672-22.368a441.632 441.632 0 0 0 438.72-248.384 694.976 694.976 0 0 1-187.872-23.008l-70.336-18.624 72.736-1.504a436.896 436.896 0 0 0 221.12-64.736 437.664 437.664 0 0 0-0.032-166.144 443.392 443.392 0 0 0-25.344-84.8A666.08 666.08 0 0 0 315.84 753.248z" fill="#B18C25"></path><path d="M703.648 218.976c-203.68 172.48-361.472 392.832-458.72 653.856l78.624-30.016c75.328-238.688 186.144-416.192 380.64-573.856 0.064-18.432 0.928-31.36-0.544-49.984z" fill="#B18C25"></path><path d="M702.08 192.544A1280.224 1280.224 0 0 0 244.928 872.8a662.72 662.72 0 0 0 44.96-16.096A1280.544 1280.544 0 0 1 704.192 248.16c0.064-18.432-0.64-36.992-2.112-55.616z" fill="#EDEEEE"></path></symbol><symbol id="icon-yonghu" viewBox="0 0 1025 1024"><path d="M1023.664 962.048c-43.952-157.52-162.384-281.104-312.496-340 92.928-61.36 154.128-164.432 154.128-281.056C865.296 152.976 707.008 0 512.4 0 317.776 0 159.408 152.976 159.408 340.992c0 116.656 61.232 219.744 154.272 281.072C164.352 680.752 46.24 803.456 1.808 959.776c-7.36 26 8.48 52.848 35.408 60.016a52.096 52.096 0 0 0 38.448-4.608 49.072 49.072 0 0 0 23.744-29.552c50.848-178.896 220.656-303.808 413.008-303.808 193.312 0 363.344 125.664 413.504 305.616 7.296 26.032 35.04 41.44 62.032 34.464 26.96-7.04 42.944-33.808 35.712-59.856zM260.608 340.992c0-134.208 112.96-243.328 251.808-243.328 138.768 0 251.68 109.136 251.68 243.328 0 133.84-112.912 242.768-251.68 242.768-138.864 0-251.808-108.928-251.808-242.768z m0 0"></path></symbol><symbol id="icon-bianji" viewBox="0 0 1024 1024"><path d="M343.296 559.936c-0.576 0.768-1.184 1.568-1.44 2.528l-45.088 169.44a29.632 29.632 0 0 0 7.2 28 27.84 27.84 0 0 0 27.232 7.296l164.096-45.888c0.256 0 0.384 0.224 0.576 0.224a7.04 7.04 0 0 0 5.152-2.176L939.808 269.568c13.056-13.376 20.192-31.616 20.192-51.456a88.96 88.96 0 0 0-25.568-61.568l-41.44-42.56c-16.256-16.704-38.208-26.24-60.096-26.24a69.44 69.44 0 0 0-50.176 20.672L343.936 558.368c-0.448 0.416-0.32 1.056-0.64 1.568zM896.864 225.504l-43.584 44.64-70.656-73.6L825.6 152.512c6.784-7.008 19.968-5.984 27.744 2.048l41.472 42.56a23.456 23.456 0 0 1 6.784 16.16 17.184 17.184 0 0 1-4.736 12.224zM421.312 566.976l316.64-324.64 70.688 73.632L492.608 640l-71.296-73.024z m-57.696 131.648l22.88-86.112 61.024 62.592-83.904 23.52z m551.968-294.848c-16.608 0-30.24 13.856-30.304 31.104v419.36c0 21.984-17.408 39.872-38.912 39.872H163.488c-21.44 0-38.944-17.856-38.944-39.872V169.728c0-22.016 17.504-39.904 38.944-39.904h445.696a30.688 30.688 0 0 0 30.272-31.04 30.688 30.688 0 0 0-30.272-31.008H158.848C106.56 67.776 64 111.392 64 165.056v693.92c0 53.632 42.56 97.216 94.848 97.216h692.096c52.32 0 94.88-43.584 94.88-97.216v-424.32a30.656 30.656 0 0 0-30.24-30.88z" fill=""></path></symbol><symbol id="icon-shanchu" viewBox="0 0 1024 1024"><path d="M392.176 885.024c29.056 0 43.568-21.936 43.568-43.888v-563.2c0-29.264-21.792-43.888-43.568-43.888-29.056 0-43.584 21.936-43.584 43.888v555.888c0 29.264 21.792 51.2 43.584 51.2zM973.168 95.088H580.992v-51.2C580.992 21.936 559.2 0 530.16 0h-43.568c-29.056 0-50.832 21.936-50.832 43.888v43.888H43.568C21.792 95.088 0 117.024 0 138.976c0 29.264 21.792 43.888 43.568 43.888h72.624v746.064c0 51.2 43.568 95.088 94.416 95.088h602.784c50.832 0 94.416-43.888 94.416-95.088V182.864h72.624c29.056 0 43.584-21.936 43.584-43.888-0.016-21.952-29.072-43.888-50.848-43.888z m-167.04 789.936c0 29.264-21.792 43.888-43.584 43.888H254.192c-29.056 0-43.584-21.936-43.584-43.888V182.864h602.784v702.176h-7.264z m-181.568 0c29.056 0 43.568-21.936 43.568-43.888v-563.2c0-29.264-21.792-43.888-43.568-43.888-29.056 0-43.584 21.936-43.584 43.888v555.888c0.016 29.264 14.544 51.2 43.584 51.2z m0 0"></path></symbol><symbol id="icon-spinner" viewBox="0 0 1024 1024"><path d="M384 149.33333333333334a128 128 0 1 1 256 0 128 128 0 0 1-256 0z m271.52 112.48a128 128 0 1 1 256 0 128 128 0 0 1-256 0zM832 533.3333333333334a64 64 0 1 1 127.968-0.032A64 64 0 0 1 832 533.3333333333334z m-112.48 271.52a64 64 0 1 1 127.968-0.032 64 64 0 0 1-127.968 0.032zM448 917.3333333333334a64 64 0 1 1 128 0 64 64 0 1 1-128 0z m-271.52-112.48a64 64 0 1 1 128 0 64 64 0 1 1-128 0z m-32-543.04a96 96 0 1 1 192 0 96 96 0 1 1-192 0zM56 533.3333333333334a72 72 0 1 1 144 0 72 72 0 0 1-144 0z"></path></symbol><symbol id="icon-weiye" viewBox="0 0 1024 1024"><path d="M713.6 515.2c0 9.6-3.2 16-9.6 22.4L233.6 1008c-6.4 6.4-16 9.6-22.4 9.6-9.6 0-16-3.2-22.4-9.6l-51.2-51.2c-6.4-6.4-9.6-12.8-9.6-22.4 0-9.6 3.2-16 9.6-22.4l396.8-396.8L137.6 118.4C131.2 115.2 128 105.6 128 96c0-9.6 3.2-16 9.6-22.4L188.8 22.4c6.4-6.4 16-9.6 22.4-9.6 9.6 0 16 3.2 22.4 9.6L704 492.8c6.4 6.4 9.6 16 9.6 22.4z m0 0M860.8 1017.6c38.4 0 67.2-32 67.2-67.2V83.2c0-38.4-32-67.2-67.2-67.2-38.4 0-67.2 32-67.2 67.2v867.2c-3.2 35.2 28.8 67.2 67.2 67.2z"></path></symbol><symbol id="icon-shouye" viewBox="0 0 1024 1024"><path d="M342.4 515.2c0-9.6 3.2-16 9.6-22.4L822.4 22.4c6.4-6.4 16-9.6 22.4-9.6 9.6 0 16 3.2 22.4 9.6l51.2 51.2c6.4 6.4 9.6 16 9.6 22.4 0 9.6-3.2 16-9.6 22.4L521.6 515.2l396.8 396.8c6.4 6.4 9.6 16 9.6 22.4 0 9.6-3.2 16-9.6 22.4l-51.2 51.2c-6.4 6.4-16 9.6-22.4 9.6-9.6 0-16-3.2-22.4-9.6L352 537.6c-6.4-3.2-9.6-12.8-9.6-22.4z m0 0M195.2 1017.6c-38.4 0-67.2-32-67.2-67.2V83.2C128 44.8 160 16 195.2 16c38.4 0 67.2 32 67.2 67.2v867.2c3.2 35.2-28.8 67.2-67.2 67.2z"></path></symbol><symbol id="icon-yixihuan" viewBox="0 0 1024 1024"><path d="M755.26144 82.91328c-68.736 0-137.53856 26.24-190.01856 78.72l-47.45728 47.488h-0.03072l-5.43744 5.47328-5.47328-5.47328h-0.03072l-47.51872-47.488C406.75328 109.15328 337.92 82.91328 269.08672 82.91328c-68.864 0-137.728 26.24-190.23872 78.72-105.088 104.92928-105.088 275.10272 0 380.032l214.016 213.79072h0.03072l166.43072 166.20544c13.08672 13.056 30.17728 19.39456 47.32928 19.39456 1.92 0 3.80928-0.09728 5.72928-0.256 1.88928 0.15872 3.80928 0.256 5.69344 0.256 17.09056 0 34.176-6.33856 47.232-19.39456l166.24128-166.20544 0.22528-0.22528 166.04672-166.04672 47.488-47.488c104.92928-104.99072 104.92928-275.10272 0-380.032-52.51072-52.51072-121.27744-78.75072-190.04928-78.75072z"></path></symbol><symbol id="icon-yidianzan" viewBox="0 0 1024 1024"><path d="M267.296 500.992v469.44h586.88l116.256-515.872h-439.36l109.984-353.952-132.864-47.04z"></path><path d="M508.192 53.568l132.864 47.04-109.984 353.952h439.392l-116.256 515.872H267.296v-469.44l240.896-447.424m0-53.568c-19.232 0-37.6 10.4-47.168 28.16L220.128 475.616c-4.192 7.808-6.4 16.512-6.4 25.376v469.44c0 29.6 24 53.568 53.568 53.568h586.88c25.056 0 46.752-17.344 52.256-41.792l116.256-515.872a53.472 53.472 0 0 0-52.256-65.312H603.776l88.416-284.512a53.536 53.536 0 0 0-33.28-66.368L526.048 3.104A52.736 52.736 0 0 0 508.192 0z"></path><path d="M211.008 512v458.432H56.288V512h154.72m0-53.536H56.288C25.184 458.464 0 482.432 0 512v458.432C0 1000.032 25.184 1024 56.288 1024h154.72c31.072 0 56.288-23.968 56.288-53.568V512c0-29.568-25.216-53.536-56.288-53.536z"></path></symbol><symbol id="icon-dianzan" viewBox="0 0 1024 1024"><path d="M508.192 53.568l132.864 47.04-109.984 353.952h439.392l-116.256 515.872H267.296v-469.44l240.896-447.424m0-53.568c-19.232 0-37.6 10.4-47.168 28.16L220.128 475.616c-4.192 7.808-6.4 16.512-6.4 25.376v469.44c0 29.6 24 53.568 53.568 53.568h586.88c25.056 0 46.752-17.344 52.256-41.792l116.256-515.872a53.472 53.472 0 0 0-52.256-65.312H603.776l88.416-284.512a53.536 53.536 0 0 0-33.28-66.368L526.048 3.104A52.736 52.736 0 0 0 508.192 0z"></path><path d="M211.008 512v458.432H56.288V512h154.72m0-53.536H56.288C25.184 458.464 0 482.432 0 512v458.432C0 1000.032 25.184 1024 56.288 1024h154.72c31.072 0 56.288-23.968 56.288-53.568V512c0-29.568-25.216-53.536-56.288-53.536z"></path></symbol><symbol id="icon-yishoucang" viewBox="0 0 1024 1024"><path d="M865.6 1024c-27.2 0-51.2-11.2-68.8-32L520 704 243.2 992c-17.6 20.8-41.6 32-68.8 32-49.6 0-89.6-41.6-89.6-91.2V150.4C84.8 67.2 150.4 0 232 0h576c81.6 0 147.2 67.2 147.2 150.4v782.4c0 49.6-40 91.2-89.6 91.2z" fill=""></path></symbol><symbol id="icon-fenxianghover" viewBox="0 0 1024 1024"><path d="M787.00544 629.888c-69.504 0-130.36544 36.224-165.248 90.752l-210.304-120.25856c13.63456-26.624 21.95456-56.32 21.95456-88.38144 0-19.77856-3.712-38.4-9.216-56.448l218.752-125.056c35.90144 38.912 86.85056 63.67744 144 63.67744 108.34944 0 196.352-87.936 196.352-196.352S895.29344 1.46944 786.944 1.46944c-108.48256 0-196.352 87.936-196.352 196.352 0 19.77856 3.77344 38.46656 9.14944 56.448L380.98944 379.264C345.088 340.352 294.144 315.648 237.056 315.648 128.57856 315.648 40.64256 403.51744 40.64256 512s87.936 196.352 196.352 196.352c44.8 0 85.56544-15.616 118.59456-40.76544l-0.768 1.34144 237.88544 135.99744c-0.896 6.97856-2.10944 13.89056-2.10944 21.376 0 108.22144 87.86944 196.224 196.352 196.224 108.34944 0 196.352-88.00256 196.352-196.224 0.05632-108.53888-87.94112-196.41344-196.29568-196.41344z"></path></symbol><symbol id="icon-pinglunhover" viewBox="0 0 1024 1024"><path d="M896.54784 32h-768C57.8304 32 0.51712 91.55072 0.51712 165.02272v498.75456c0 73.44128 58.56256 141.11744 130.87744 141.11744H326.5024c33.95072 36.28544 174.72 182.20544 174.72 182.20544a15.488 15.488 0 0 0 22.59456 0s103.07072-116.992 170.17856-182.20544h199.61344c72.32 0 130.87744-67.712 130.87744-141.11744V165.02784c0.03072-73.472-57.28256-133.02784-127.93856-133.02784zM256.50176 497.50528c-35.328 0-64-29.75744-64-66.49344s28.672-66.49856 64-66.49856c35.35872 0 64 29.75744 64 66.49856 0 36.73088-28.64128 66.49344-64 66.49344z m256.03072 0c-35.35872 0-64-29.75744-64-66.49344s28.64128-66.49856 64-66.49856c35.328 0 63.96928 29.75744 63.96928 66.49856 0 36.73088-28.64128 66.49344-63.96928 66.49344z m255.96928 0c-35.328 0-64-29.75744-64-66.49344s28.672-66.49856 64-66.49856 64.03072 29.75744 64 66.49856c0 36.73088-28.672 66.49344-64 66.49344z"></path></symbol></svg><div class="csdn-toolbar csdn-toolbar csdn-toolbar-skin-black ">        <div class="container row center-block ">          <ul class="col-md-5 pull-left left-menu clearfix">            <li>              <a href="http://www.csdn.net?ref=toolbar" title="CSDN首页" target="_blank">              <svg class="icon" aria-hidden="true">                  <use xlink:href="#toolbar-csdnlogo"></use>              </svg>                </a>            </li>            <li><a href="http://feed.csdn.net/?ref=toolbar" class="toolbar_to_feed" title="博客" target="_blank" style="position: relative;">博客<div class="toolbar_speck"></div></a></li>            <li><a href="http://edu.csdn.net?ref=toolbar" title="学院" target="_blank">学院</a></li>            <li><a href="http://download.csdn.net?ref=toolbar" title="下载" target="_blank">下载</a></li>            <li class="show-more">            <a href="javascript:;">更多<i class="iconfont-toolbar toolbar-xiajiantou"></i></a>              <div class="more">                <div><a href="http://bbs.csdn.net?ref=toolbar" target="_blank">论坛</a></div>                <div><a href="http://ask.csdn.net?ref=toolbar" target="_blank">问答</a></div>                <div><a href="http://huiyi.csdn.net/?ref=toolbar" target="_blank">活动</a></div>                <div><a href="https://gitee.com/?utm_source=csdn_toolbar" target="_blank">码云</a></div>                <div><a href="http://mall.csdn.net?ref=toolbar" target="_blank">商城</a></div>              </div>            </li>          </ul>          <div class="pull-right login-wrap unlogin">            <ul class="btns">            <li class="toolbar-tracking"><a href="#" style="padding:0" target="_blank"></a></li>              <li>                <div class="search_bar">                  <input class="input_search" name="" type="text" value="">                  <a href="javascript:;" class="btn btn-nobg-noborder btn-search ico_search" target="_blank"><i class="iconfont-toolbar toolbar-sousuo"></i></a>                </div>              </li>              <li class="write-bolg-btn"><a class="" href="http://write.blog.csdn.net/postedit?ref=toolbar" target="_blank" style="position: relative;"><i class="iconfont-toolbar toolbar-icon_boke"></i><div class="toolbar-prompt-box" style="left: -16.2667px;">                  <div class="arrow" style="left: 23.5px;"></div>                  <span style="left: 23.5px;">写博客</span>                </div></a></li>              <li class="gitChat"><a class="" href="http://gitbook.cn/new/gitchat/activity?utm_source=csdnblog1" target="_blank" style="position: relative;"><i class="iconfont-toolbar toolbar-icon_gitchatx"></i><div class="toolbar-prompt-box" style="left: -24.2667px;">                  <div class="arrow" style="left: 31.5px;"></div>                  <span style="left: 31.5px;">发布Chat</span>                </div></a></li>              <li class="userinfo"><a href="https://passport.csdn.net/account/login?ref=toolbar">登录</a><span></span><a href="http://passport.csdn.net/account/mobileregister?ref=toolbar&action=mobileRegister">注册</a></li>              <li class="userLogin">                <div class="loginCenter"><a href="http://my.csdn.net?ref=toolbar"><img class="login_img" data-savepage-src="//c.csdnimg.cn/public/common/toolbar/images/100x100.jpg" src="data:image/jpeg;resource=11;base64,"><span class="userName"></span></a><a class="set-nick" href="https://passport.csdn.net/account/profile">设置昵称<span class="write-icon"></span></a><i class="iconfont-toolbar toolbar-xiajiantou"></i></div>                <div class="userControl">                  <div><a href="http://my.csdn.net?ref=toolbar" target="_blank">主页</a></div>                  <div><a href="http://msg.csdn.net/letters?ref=toolbar" target="_blank">消息</a></div>                  <div><a href="https://my.csdn.net//my/account/changepwd?ref=toolbar" target="_blank">设置</a></div>                  <div><a href="http://bbs.csdn.net/forums/Service?ref=toolbar" target="_blank">反馈</a></div>                  <div><a href="https://passport.csdn.net/account/logout?ref=toolbar">退出</a></div>                </div>              </li>            </ul>          </div>        </div>    </div><script class="toolbar-s" type="text/javascript" data-savepage-src="http://c.csdnimg.cn/cdn/content-toolbar/iconfont.js" src=""></script>

<div class="container clearfix">
    <main>
        <article>
            <h1 class="csdn_top">Makefile经典教程(掌握这些足够)</h1>
            <div class="article_bar clearfix">
                <div class="artical_tag">
                    <span class="original">转载</span>
                    <span class="time">2012年07月31日 15:28:42</span>
                </div>
				<ul class="article_tags clearfix csdn-tracking-statistics" data-mod="popu_377">
					<li class="tit">标签：</li>
					
					<li><a href="http://so.csdn.net/so/search/s.do?q=makefile&t=blog" target="_blank">makefile</a> <span>/</span></li>
					
					<li><a href="http://so.csdn.net/so/search/s.do?q=编译器&t=blog" target="_blank">编译器</a> <span>/</span></li>
					
					<li><a href="http://so.csdn.net/so/search/s.do?q=unix&t=blog" target="_blank">unix</a> <span>/</span></li>
					
					<li><a href="http://so.csdn.net/so/search/s.do?q=include&t=blog" target="_blank">include</a> <span>/</span></li>
					
					<li><a href="http://so.csdn.net/so/search/s.do?q=shell&t=blog" target="_blank">shell</a> <span style="display: none;">/</span></li>
					
				</ul>
                <ul class="right_bar">
                    <li><button class="btn-noborder"><i class="icon iconfont icon-read"></i><span class="txt">413124</span></button></li>
                    <!--<li><button class="btn-noborder"><i class="icon iconfont icon-dashang-"></i><span class="txt">0</span></button></li>-->

                    <li class="edit" style="display: none;">
                        <a class="btn-noborder" href="http://write.blog.csdn.net/postedit/7814546">
                            <i class="icon iconfont icon-bianji"></i><span class="txt">编辑</span>
                        </a>
                    </li>
                    <li class="del" style="display: none;">
                        <a class="btn-noborder" onclick="javascript:deleteArticle(fileName);return false;">
                            <i class="icon iconfont icon-shanchu"></i><span class="txt">删除</span>
                        </a>
                    </li>
                </ul>
            </div>
            <div id="article_content" class="article_content csdn-tracking-statistics" data-mod="popu_519" data-dsm="post" style="overflow: hidden;">
                
<p style="text-align:left" align="center"></p>
<p><strong><span style="font-size:12px">该篇文章为转载，是对原作者系列文章的总汇加上标注。</span></strong></p>
<p><strong><span style="font-size:12px">支持原创，请移步陈浩大神博客：</span></strong></p>
<p><strong><span style="font-size:12px"><a target="_blank" href="http://blog.csdn.net/haoel/article/details/2886">http://blog.csdn.net/haoel/article/details/2886</a></span></strong></p>
<p><strong><span style="font-size:12px"><span style="color:#3333ff"><br>
</span></span><span style="font-size:14px; color:#3333ff">makefile很重要</span></strong><br>
<br>
<span style="font-size:12px">      什么是</span><span style="font-size:12px"><span style="color:#cc0000">makefile</span></span><span style="font-size:12px">？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和professional的程序员，makefile还是要懂。这就好像现在有这么多的HTML的编辑器，但如果你想成为一个专业人士，你还是要了解HTML的标识的含义。特别在Unix下的软件编译，你就不能不自己写makefile了，</span><span style="color:#cc0000; font-size:12px"><strong>会不会写makefile，从一个侧面说明了一个人是否具备完成大型工程的能力</strong></span><span style="font-size:12px">。</span><span style="font-size:12px">因为，makefile关系到了整个工程的编译规则。一个工程中的源文件不计数，其按<strong><span style="color:#ff0000">类型、功能、模块</span></strong>分别放在若干个目录中，makefile定义了一系列的规则来指定，哪些文件需要先编译，哪些文件需要后编译，哪些文件需要重新编译，甚至于进行更复杂的功能操作，因为makefile就像一个Shell脚本一样，其中也可以执行操作系统的命令。</span><span style="font-size:12px">makefile带来的好处就是——“自动化编译”，一旦写好，只需要一个make命令，整个工程完全自动编译，极大的提高了软件开发的效率。make是一个命令工具，是一个解释makefile中指令的命令工具，一般来说，大多数的IDE都有这个命令，比如：Delphi的make，Visual
 C++的nmake，Linux下GNU的make。可见，makefile都成为了一种在工程方面的编译方法。</span></p>
<p align="left"><span style="font-size:12px">      现在讲述如何写makefile的文章比较少，这是我想写这篇文章的原因。当然，不同产商的make各不相同，也有不同的语法，但其本质都是在“文件依赖性”上做文章，这里，我仅对GNU的make进行讲述，我的环境是RedHat Linux 8.0，make的版本是3.80。必竟，这个make是应用最为广泛的，也是用得最多的。而且其还是最遵循于IEEE 1003.2-1992 标准的（POSIX.2）。</span></p>
<p align="left"><span style="font-size:12px; color:#ff6666">    在这篇文档中，将以C/C++的源码作为我们基础，所以必然涉及一些关于C/C++的编译的知识，相关于这方面的内容，还请各位查看相关的编译器的文档。这里所默认的编译器是UNIX下的GCC和CC。</span></p>
<p align="left"><span style="font-size:12px"><strong><a target="_blank" name="sawMNIbg0DwoM"></a>0.1 关于程序的编译和链接</strong></span></p>
<p align="left"><span style="font-size:12px">   在此，我想多说关于程序编译的一些规范和方法，一般来说，无论是C、C++、还是pas，首先要把源文件编译成<strong><span style="color:#3333ff">中间代码文件</span></strong>，在Windows下也就是 .obj 文件，UNIX下是 .o 文件，即 Object File，这个动作叫做<strong><span style="color:#3333ff">编译（compile）</span></strong>。然后再把大量的Object
 File合成执行文件，这个动作叫作<span style="background-color:rgb(255,255,255)"><span style="color:#3333ff">链接（link）</span></span>。</span><span style="font-size:12px">   <br>
     <br>
       <strong>编译时</strong>，编译器需要的是语法的正确，函数与变量的声明的正确。对于后者，通常是你需要告诉编译器头文件的所在位置（头文件中应该只是声明，而定义应该放在C/C++文件中），只要所有的语法正确，编译器就可以编译出中间目标文件。一般来说，每个源文件都应该对应于一个中间目标文件（O文件或是OBJ文件）。</span><span style="font-size:12px"> <br>
       <strong>链接时</strong>，主要是链接函数和全局变量，所以，我们可以使用这些中间目标文件（O文件或是OBJ文件）来链接我们的应用程序。链接器并不管函数所在的源文件，只管函数的中间目标文件（Object File），在大多数时候，由于源文件太多，编译生成的中间目标文件太多，而在链接时需要明显地指出中间目标文件名，这对于编译很不方便，所以，我们要给中间目标文件打个包，在Windows下这种包叫“<strong><span style="color:#3366ff">库文件”（Library
 File)</span></strong>，也就是 .lib 文件，在UNIX下，是Archive File，也就是 .a 文件。</span></p>
<p align="left"><span style="font-size:12px">      总结一下，源文件首先会生成中间目标文件，再由中间目标文件生成执行文件。在编译时，编译器只检测程序语法，和函数、变量是否被声明。如果函数未被声明，编译器会给出一个警告，但可以生成Object File。而在链接程序时，链接器会在所有的Object File中找寻函数的实现，如果找不到，那到就会报链接错误码（Linker Error），在VC下，这种错误一般是：Link 2001错误，意思说是说，链接器未能找到函数的实现。你需要指定函数的ObjectFile.<br>
</span>       <br>
       好，言归正传，GNU的make有许多的内容，闲言少叙，还是让我们开始吧。</p>
<p align="left"><a target="_blank" name="sasS2ZeUsjr3E"></a></p>
<h1><a name="t0"></a><strong><span style="font-size:14px">1 Makefile 介绍</span></strong></h1>
<p></p>
<p align="left"><span style="font-size:12px">      make命令执行时，需要一个 Makefile 文件，以告诉make命令需要怎么样的去编译和链接程序。</span></p>
<p align="left"><span style="font-size:12px">      首先，我们用一个示例来说明Makefile的书写规则。以便给大家一个感兴认识。这个示例来源于GNU的make使用手册，在这个示例中，我们的工程有8个C文件，和3个头文件，我们要写一个Makefile来告诉make命令如何编译和链接这几个文件。我们的规则是：</span></p>
<p align="left"><span style="font-size:12px">          <br>
<span style="color:#3333ff">            1.如果这个工程没有编译过，那么我们的所有C文件都要编译并被链接。</span></span></p>
<p align="left"><span style="font-size:12px"><span style="color:#3333ff">            2.如果这个工程的某几个C文件被修改，那么我们只编译被修改的C文件，并链接目标程序。</span></span></p>
<p align="left"><span style="font-size:12px"><span style="color:#3333ff">            3.如果这个工程的头文件被改变了，那么我们需要编译引用了这几个头文件的C文件，并链接目标程序。</span><br>
<br>
</span></p>
<p align="left"><span style="font-size:12px">      只要我们的Makefile写得够好，所有的这一切，我们只用一个make命令就可以完成，make命令会自动智能地根据当前的文件修改的情况来确定哪些文件需要重编译，从而自己编译所需要的文件和链接目标程序。<br>
<br>
</span></p>
<p align="left"><span style="font-size:12px"><strong><a target="_blank" name="saFo4MNg5pK8Y"></a></strong></span></p>
<h2><a name="t1"></a><span style="font-size:12px"><strong>1.1 Makefile的规则</strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">   在讲述这个Makefile之前，还是让我们先来粗略地看一看Makefile的规则。</span></p>
<p align="left"><span style="font-size:12px"><span style="color:#3333ff">        </span>
<span style="color:#cc33cc"> <strong> target... : prerequisites ...</strong></span></span></p>
<p align="left"><span style="font-size:12px"><span style="color:#cc33cc"><strong>          command</strong></span></span></p>
<p align="left"><span style="font-size:12px"><span style="color:#cc33cc"><strong>          ...</strong></span></span></p>
<p align="left"><span style="font-size:12px"><span style="color:#cc33cc"><strong>          ...<br>
         -------------------------------------------------------------------------------</strong></span></span></p>
<p align="left"><span style="font-size:12px">      <strong> target</strong>也就是一个目标文件，可以是<strong>Object File</strong>，也可以是执行文件。还可以是一个标签（Label），对于标签这种特性，在后续的“伪目标”章节中会有叙述。</span></p>
<p align="left"><span style="font-size:12px"><strong>       prerequisites</strong>就是，要生成那个target所需要的文件或是目标。</span></p>
<p align="left"><span style="font-size:12px"><strong>       command</strong>也就是make需要执行的命令。（任意的Shell命令）<br>
<br>
</span></p>
<p align="left"><span style="font-size:12px">       这是一个文件的依赖关系，也就是说，target这一个或多个的目标文件依赖于prerequisites中的文件，其生成规则定义在command中。说白一点就是说，prerequisites中如果有一个以上的文件比target文件要新的话，command所定义的命令就会被执行。这就是Makefile的规则。也就是Makefile中最核心的内容。</span></p>
<p align="left"><span style="font-size:12px">       说到底，Makefile的东西就是这样一点，好像我的这篇文档也该结束了。呵呵。还不尽然，这是Makefile的主线和核心，但要写好一个Makefile还不够，我会以后面一点一点地结合我的工作经验给你慢慢到来。内容还多着呢。：）<br>
<br>
</span></p>
<p align="left"><span style="font-size:12px"><strong><a target="_blank" name="safvghBu.bIEs"></a></strong></span></p>
<h2><a name="t2"></a><span style="font-size:12px"><strong>1.2 一个示例</strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">正如前面所说的，如果一个工程有3个头文件，和8个C文件，我们为了完成前面所述的那三个规则，我们的Makefile应该是下面的这个样子的。</span></p>
<p align="left"><span style="font-size:12px">   <span style="color:#000099; background-color:rgb(204,204,204)">edit : main.o kbd.o command.o display.o \</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">          insert.o search.o files.o utils.o</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -o edit main.o kbd.o command.o display.o \</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">                      insert.o search.o files.o utils.o</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099"> </span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   main.o : main.c defs.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c main.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   kbd.o : kbd.c defs.h command.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c kbd.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   command.o : command.c defs.h command.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c command.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   display.o : display.c defs.h buffer.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c display.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   insert.o : insert.c defs.h buffer.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c insert.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   search.o : search.c defs.h buffer.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c search.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   files.o : files.c defs.h buffer.h command.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c files.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   utils.o : utils.c defs.h</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           cc -c utils.c</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">   clean :</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">           rm edit main.o kbd.o command.o display.o \</span></span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(204,204,204)"><span style="color:#000099">              insert.o search.o files.o utils.o</span></span></p>
<p align="left"><span style="font-size:12px">      <strong>  反斜杠（\）</strong>是换行符的意思。这样比较便于Makefile的易读。我们可以把这个内容保存在文件为“Makefile”或“makefile”的文件中，然后在该目录下直接输入命令“make”就可以生成执行文件edit。如果要删除执行文件和所有的中间目标文件，那么，只要简单地执行一下“make clean”就可以了。</span></p>
<p align="left"><span style="font-size:12px"><span style="">      </span><span style="">  </span>在这个makefile中，目标文件（target）包含：执行文件edit和中间目标文件（*.o），依赖文件（prerequisites）就是冒号后面的那些 .c 文件和 .h文件。每一个 .o 文件都有一组依赖文件，而这些 .o 文件又是执行文件 edit 的依赖文件。依赖关系的实质上就是说明了目标文件是由哪些文件生成的，换言之，目标文件是哪些文件更新的。</span></p>
<p align="left"><span style="font-size:12px">      </span><span style="font-size:12px">  </span>在定义好依赖关系后，后续的那一行定义了如何生成目标文件的<strong><span style="font-size:14px; color:#ff0000">操作系统命令</span>，一定要以一个<span style="font-size:14px; color:#ff0000">Tab键作为开头</span>。记住，make并不管命令是怎么工作的，他只管执行所定义的命令</strong>。make会比较targets文件和prerequisites文件的修改日期，如果prerequisites文件的日期要比targets文件的日期要新，或者target不存在的话，那么，make就会执行后续定义的命令。</p>
<p align="left"><span style="font-size:12px"><span style="">      </span><span style="">  </span>这里要说明一点的是，clean不是一个文件，它只不过是一个动作名字，有点像C语言中的lable一样，其冒号后什么也没有，那么，make就不会自动去找文件的依赖性，也就不会自动执行其后所定义的命令。要执行其后的命令，就要在make命令后明显得指出这个lable的名字。这样的方法非常有用，我们可以在一个makefile中定义不用的编译或是和编译无关的命令，比如程序的打包，程序的备份，等等。</span></p>
<p align="left"><span style="font-size:12px"><strong><a target="_blank" name="saUhuTfg0njOg"></a></strong></span></p>
<h2><a name="t3"></a><span style="font-size:12px"><strong>1.3 make是如何工作的</strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">在默认的方式下，也就是我们只输入make命令。那么，</span></p>
<p align="left"></p>
<ol>
<li><span style="color:rgb(51,102,255)">  make会在当前目录下找名字叫“Makefile”或“makefile”的文件。</span></li><li><span style="color:rgb(51,102,255)">  如果找到，它会找文件中的第一个目标文件（target），在上面的例子中，他会找到“edit”这个文件，并把这个文件作为最终的目标文件。</span></li><li><span style="color:rgb(51,102,255)">  如果edit文件不存在，或是edit所依赖的后面的 .o 文件的文件修改时间要比edit这个文件新，那么，他就会执行后面所定义的命令来生成edit这个文件。</span></li><li><span style="color:rgb(51,102,255)">  如果edit所依赖的.o文件也存在，那么make会在当前文件中找目标为.o文件的依赖性，如果找到则再根据那一个规则生成.o文件。（这有点像一个堆栈的过程）</span></li><li><span style="color:rgb(51,102,255)">  当然，你的C文件和H文件是存在的啦，于是make会生成 .o 文件，然后再用 .o 文件声明make的终极任务，也就是执行文件edit了。</span></li></ol>
<p></p>
<pre>    这就是整个make的依赖性，make会一层又一层地去找文件的依赖关系，直到最终编译出第一个目标文件。在找寻的过程中，如果出现错误，比如最后被依赖的文件找不到，那么make就会直接退出，并报错，而对于所定义的命令的错误，或是编译不成功，make根本不理。make只管文件的依赖性，即，如果在我找了依赖关系之后，冒号后面的文件还是不在，那么对不起，我就不工作啦。</pre>
<p align="left">        通过上述分析，我们知道，像clean这种，没有被第一个目标文件直接或间接关联，那么它后面所定义的命令将不会被自动执行，不过，我们可以显示要make执行。即命令——<strong><span style="font-size:14px; color:#ff0000">“make clean”，以此来清除所有的目标文件，以便重编译</span></strong>。</p>
<p align="left">      于是在我们编程中，如果这个工程已被编译过了，当我们修改了其中一个源文件，比如file.c，那么根据我们的依赖性，我们的目标file.o会被重编译（也就是在这个依性关系后面所定义的命令），于是file.o的文件也是最新的啦，于是file.o的文件修改时间要比edit要新，所以edit也会被重新链接了（详见edit目标文件后定义的命令）。</p>
<p align="left">而如果我们改变了“command.h”，那么，kdb.o、command.o和files.o都会被重编译，并且，edit会被重链接。</p>
<p align="left"><strong><span style="color:#ff0000"><a target="_blank" name="sakYRADlySYSU"></a></span></strong></p>
<h2><a name="t4"></a><strong><span style="color:#ff0000">1.4 makefile中使用变量</span></strong></h2>
<p></p>
<p align="left">在上面的例子中，先让我们看看edit的规则：</p>
<p align="left"><span style="font-size:12px">     edit : main.o kbd.o command.o display.o \</span></p>
<p align="left"><span style="font-size:12px">                 insert.o search.o files.o utils.o</span></p>
<p align="left"><span style="font-size:12px">           cc -o edit main.o kbd.o command.o display.o \</span></p>
<p align="left"><span style="font-size:12px">                      insert.o search.o files.o utils.o</span></p>
<p align="left"><span style="font-size:12px">    我们可以看到[.o]文件的字符串被重复了两次，如果我们的工程需要加入一个新的[.o]文件，那么我们需要在两个地方加（应该是三个地方，还有一个地方在clean中）。当然，我们的makefile并不复杂，所以在两个地方加也不累，但如果makefile变得复杂，那么我们就有可能会忘掉一个需要加入的地方，而导致编译失败。所以，为了makefile的易维护，在makefile中我们可以使用变量。makefile的变量也就是一个字符串，理解成C语言中的宏可能会更好。</span></p>
<p align="left"><span style="font-size:12px">比如，我们声明一个变量，叫objects, OBJECTS, objs, OBJS, obj, 或是 OBJ，反正不管什么啦，只要能够表示obj文件就行了。我们在makefile一开始就这样定义：</span></p>
<p align="left"><span style="font-size:12px">    objects = main.o kbd.o command.o display.o \</span></p>
<p align="left"><span style="font-size:12px">             insert.o search.o files.o utils.o</span></p>
<p align="left"><span style="font-size:12px">于是，我们就可以很方便地在我们的makefile中以<strong><span style="color:#3333ff">“$(objects)”</span></strong>的方式来使用这个变量了，于是我们的改良版makefile就变成下面这个样子：</span></p>
<pre><span style="font-size:12px">   objects = main.o kbd.o command.o display.o \
</span><span style="font-size:12px">             insert.osearch.o files.o utils.o</span> 
   edit : $(objects)
<span style="font-size:12px">           cc -o edit $(objects)
</span><span style="font-size:12px">   main.o : main.c defs.h
</span><span style="font-size:12px">           cc -c main.c
</span><span style="font-size:12px">   kbd.o : kbd.c defs.h command.h
</span><span style="font-size:12px">           cc -c kbd.c
</span><span style="font-size:12px">   command.o : command.c defs.h command.h
</span><span style="font-size:12px">           cc -c command.c
</span><span style="font-size:12px">   display.o : display.c defs.h buffer.h
</span><span style="font-size:12px">           cc -c display.c
</span><span style="font-size:12px">   insert.o : insert.c defs.h buffer.h
</span><span style="font-size:12px">           cc -c insert.c
</span><span style="font-size:12px">   search.o : search.c defs.h buffer.h
</span><span style="font-size:12px">           cc -c search.c
</span><span style="font-size:12px">   files.o : files.c defs.h buffer.h command.h
</span><span style="font-size:12px">           cc -c files.c
</span><span style="font-size:12px">   utils.o : utils.c defs.h
</span><span style="font-size:12px">           cc -c utils.c
</span><span style="font-size:12px">   clean :
</span><span style="font-size:12px">           rm edit $(objects)</span></pre>
<p align="left"><span style="font-size:12px">于是如果有新的 .o 文件加入，我们只需简单地修改一下 objects 变量就可以了。</span></p>
<p align="left"><span style="font-size:12px">关于变量更多的话题，我会在后续给你一一道来。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saI0kS8BRp2aM"></a></span></strong></span></p>
<h2><a name="t5"></a><span style="font-size:12px"><strong><span style="color:#ff0000">1.5 让make自动推导</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">GNU的make很强大，它可以自动推导文件以及文件依赖关系后面的命令，于是我们就没必要去在每一个[.o]文件后都写上类似的命令，因为，我们的make会自动识别，并自己推导命令。</span></p>
<p align="left"><span style="font-size:12px">    只要make看到一个[.o]文件，它就会自动的把[.c]文件加在依赖关系中，如果make找到一个whatever.o，那么whatever.c，就会是whatever.o的依赖文件。并且 cc -c whatever.c 也会被推导出来，于是，我们的makefile再也不用写得这么复杂。我们的是新的makefile又出炉了。</span></p>
<pre><span style="font-size:12px">   objects = main.o kbd.o command.o display.o \
</span><span style="font-size:12px">             insert.o search.o files.o utils.o
</span><span style="font-size:12px"> 
</span><span style="font-size:12px">   edit : $(objects)
</span><span style="font-size:12px">           cc -o edit $(objects)
</span><span style="font-size:12px"> 
</span><span style="font-size:12px">   main.o : defs.h
</span><span style="font-size:12px">   kbd.o : defs.h command.h
</span><span style="font-size:12px">   command.o : defs.h command.h
</span><span style="font-size:12px">   display.o : defs.h buffer.h
</span><span style="font-size:12px">   insert.o : defs.h buffer.h
</span><span style="font-size:12px">   search.o : defs.h buffer.h
</span><span style="font-size:12px">   files.o : defs.h buffer.h command.h
</span><span style="font-size:12px">   utils.o : defs.h
</span><span style="font-size:12px"> 
</span><span style="font-size:12px">   .PHONY : clean
</span><span style="font-size:12px">   clean :
</span><span style="font-size:12px">           rm edit $(objects)</span></pre>
<p align="left"><span style="font-size:12px">这种方法，也就是make的“隐晦规则”。上面文件内容中，“.PHONY”表示，clean是个伪目标文件。</span></p>
<p align="left"><span style="font-size:12px">关于更为详细的“隐晦规则”和“伪目标文件”，我会在后续给你一一道来。</span></p>
<p align="left"><span style="font-size:12px"><span style="color:#ff0000"><strong><a target="_blank" name="saZz8bKL2yj32"></a></strong></span></span></p>
<h2><a name="t6"></a><span style="font-size:12px"><span style="color:#ff0000"><strong>1.6 另类风格的makefile</strong></span></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">    即然我们的make可以自动推导命令，那么我看到那堆[.o]和[.h]的依赖就有点不爽，那么多的重复的[.h]，能不能把其收拢起来，好吧，没有问题，这个对于make来说很容易，谁叫它提供了自动推导命令和文件的功能呢？来看看最新风格的makefile吧。</span></p>
<pre><span style="color:#330099; background-color:rgb(204,204,204)"><span style="font-size:12px">   </span><span style="font-size:12px">objects = main.o kbd.o command.o display.o \
</span><span style="font-size:12px">             insert.o search.o files.o utils.o
</span><span style="font-size:12px"> 
</span><span style="font-size:12px">   edit : $(objects)
</span><span style="font-size:12px">           cc -o edit $(objects)
</span><span style="font-size:12px"> 
</span><span style="font-size:12px">   $(objects) : defs.h
</span><span style="font-size:12px">   kbd.o command.o files.o : command.h
</span><span style="font-size:12px">   display.o insert.o search.o files.o : buffer.h
</span><span style="font-size:12px"> 
</span><span style="font-size:12px">   .PHONY : clean
</span><span style="font-size:12px">   clean :
</span><span style="font-size:12px">           rm edit $(objects)</span></span></pre>
<p align="left"><span style="font-size:12px">这种风格，让我们的makefile变得很简单，但我们的文件依赖关系就显得有点凌乱了。鱼和熊掌不可兼得。还看你的喜好了。我是不喜欢这种风格的，一是文件的依赖关系看不清楚，二是如果文件一多，要加入几个新的.o文件，那就理不清楚了。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="sajVLYsI/Te76"></a></span></strong></span></p>
<h2><a name="t7"></a><span style="font-size:12px"><strong><span style="color:#ff0000">1.7 清空目标文件的规则</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">      每个Makefile中都应该写一个清空目标文件（.o和执行文件）的规则，这不仅便于重编译，也很利于保持文件的清洁。这是一个“修养”（呵呵，还记得我的《编程修养》吗）。一般的风格都是：</span></p>
<p align="left"><span style="font-size:12px">       clean:</span></p>
<p align="left"><span style="font-size:12px">           rm edit $(objects)</span></p>
<p align="left"><span style="font-size:12px">更为稳健的做法是：</span></p>
<p align="left"><span style="font-size:12px">       .PHONY : clean</span></p>
<p align="left"><span style="font-size:12px">       clean :</span></p>
<p align="left"><span style="font-size:12px">               -rm edit $(objects)</span></p>
<p align="left"><span style="font-size:12px">前面说过，.PHONY意思表示clean是一个“伪目标”，。而在rm命令前面加了一个小减号的意思就是，也许某些文件出现问题，但不要管，继续做后面的事。当然，clean的规则不要放在文件的开头，不然，这就会变成make的默认目标，相信谁也不愿意这样。不成文的规矩是——“clean从来都是放在文件的最后”。</span></p>
<p align="left"><span style="font-size:12px">上面就是一个makefile的概貌，也是makefile的基础，下面还有很多makefile的相关细节，准备好了吗？准备好了就来。</span></p>
<p align="center"><span style="font-size:12px"> </span></p>
<span style="font-size:12px"><br clear="ALL">
</span>
<p align="left"><span style="font-size:12px"><span style="color:#ff0000"><strong><a target="_blank" name="saUwmWQH9kI.I"></a></strong></span></span></p>
<h1><a name="t8"></a><span style="font-size:12px"><span style="color:#ff0000"><strong>2 Makefile 总述</strong></span></span></h1>
<p></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saE5AkeJJa502"></a></span></strong></span></p>
<h2><a name="t9"></a><span style="font-size:12px"><strong><span style="color:#ff0000">2.1 Makefile里有什么？</span></strong></span></h2>
<p></p>
<p align="left">Makefile里主要包含了<strong><span style="color:#3333ff; background-color:rgb(153,255,153)"><span style="font-size:14px">五</span><span style="font-size:14px">个东西</span></span><span style="color:#ff0000">：显式规则、隐晦规则、变量定义、文件指示和注释。</span></strong></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p align="left"></p>
<ol>
<li><span style="color:#3333ff">显式规则。显式规则说明了，如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出，要生成的文件，文件的依赖文件，生成的命令。</span></li><li><span style="color:#3333ff">隐晦规则。由于我们的make有自动推导的功能，所以隐晦的规则可以让我们比较粗糙地简略地书写Makefile，这是由make所支持的。</span></li><li><span style="color:#3333ff">变量的定义。在Makefile中我们要定义一系列的变量，变量一般都是字符串，这个有点你C语言中的宏，当Makefile被执行时，其中的变量都会被扩展到相应的引用位置上。</span></li><li><span style="color:#3333ff">文件指示。其包括了三个部分，一个是在一个Makefile中引用另一个Makefile，就像C语言中的include一样；另一个是指根据某些情况指定Makefile中的有效部分，就像C语言中的预编译#if一样；还有就是定义一个多行的命令。有关这一部分的内容，我会在后续的部分中讲述。</span></li><li><span style="color:#3333ff"> 注释。Makefile中只有行注释，和UNIX的Shell脚本一样，其注释是用“#”字符，这个就像C/C++中的“//”一样。如果你要在你的Makefile中使用“#”字符，可以用反斜框进行转义，如：“\#”。</span></li></ol>
<p></p>
</blockquote>
<p align="left">最后，还值得一提的是，在Makefile中的命令，必须要以[Tab]键开始。</p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saMBWVx.XqyII"></a></span></strong></span></p>
<h2><a name="t10"></a><span style="font-size:12px"><strong><span style="color:#ff0000">2.2Makefile的文件名</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">        默认的情况下，make命令会在当前目录下按顺序找寻文件名为</span><span style="font-size:14px; color:#000099"><strong>“GNUmakefile”、“makefile”、“Makefile”</strong></span><span style="font-size:12px">的文件，找到了解释这个文件。在这三个文件名中，最好使用“Makefile”这个文件名，因为，这个文件名第一个字符为大写，这样有一种显目的感觉。最好不要用“GNUmakefile”，这个文件是GNU的make识别的。有另外一些make只对全小写的“makefile”文件名敏感，但是基本上来说，大多数的make都支持“<strong>makefile”和“Makefile”</strong>这两种默认文件名。</span></p>
<p align="left"><span style="font-size:12px">     当然，你可以使用别的文件名来书写Makefile，比如：“Make.Linux”，“Make.Solaris”，“Make.AIX”等，如果要<strong><span style="color:#3333ff">指定特定的Makefile，你可以使用make的“-f”和“--file”参数</span></strong>，如：make -f Make.Linux或make --file Make.AIX。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#3333ff"><a target="_blank" name="safRh/qN.aud2"></a></span></strong></span></p>
<h2><a name="t11"></a><span style="font-size:12px"><strong><span style="color:#3333ff">2.3 引用其它的Makefile</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">    在Makefile使用include关键字可以把别的Makefile包含进来，这很像C语言的#include，被包含的文件会原模原样的放在当前文件的包含位置。include的语法是：</span></p>
<pre><strong><span style="font-size:18px">  <span style="color:#ff0000">  include&lt;filename&gt;</span></span></strong><span style="background-color:rgb(255,255,204)"><span style="font-size:18px">filename可以是当前操作系统Shell的文件模式（可以保含路径和通配符）</span>
</span>
</pre>
<p align="left"><span style="font-size:14px; color:#ff0000"><strong>在include前面可以有一些空字符，但是绝不能是[Tab]键开始。include和可以用一个或多个空格隔开。</strong></span>举个例子，你有这样几个Makefile：a.mk、b.mk、c.mk，还有一个文件叫foo.make，以及一个变量$(bar)，其包含了e.mk和f.mk，那么，下面的语句：</p>
<p align="left"><span style="font-size:12px">   include foo.make *.mk $(bar)</span></p>
<p align="left"><span style="font-size:12px">等价于：</span></p>
<p align="left"><span style="font-size:12px">   include foo.make a.mk b.mk c.mk e.mk f.mk</span></p>
<p align="left"><span style="font-size:12px">make命令开始时，会把找寻include所指出的其它Makefile，并把其内容安置在当前的位置。就好像C/C++的#include指令一样。如果文件都没有指定绝对路径或是相对路径的话，make会在当前目录下首先寻找，如果当前目录下没有找到，那么，make还会在下面的几个目录下找：</span></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<pre><span style="font-size:12px; background-color:rgb(255,255,153)">1.如果make执行时，有“-I”或“--include-dir”参数，那么make就会在这个参数所指定的目录下去寻找。</span></pre>
<pre><span style="font-size:12px; background-color:rgb(255,255,153)">2.如果目录/include（一般是：/usr/local/bin或/usr/include）存在的话，make也会去找。
</span></pre>
</blockquote>
<p align="left"><span style="font-size:12px"><br>
      如果有文件没有找到的话，make会生成一条警告信息，但不会马上出现致命错误。它会继续载入其它的文件，一旦完成makefile的读取，make会再重试这些没有找到，或是不能读取的文件，如果还是不行，make才会出现一条致命信息。如果你想让make不理那些无法读取的文件，而继续执行，你可以在include前加一个减号“-”。如：</span></p>
<p align="left"><span style="font-size:12px">-include&lt;filename&gt;</span></p>
<p align="left"><span style="font-size:12px">其表示，无论include过程中出现什么错误，都不要报错继续执行。和其它版本make兼容的相关命令是sinclude，其作用和这一个是一样的。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saJlQ/WyAfG6."></a></span></strong></span></p>
<h2><a name="t12"></a><span style="color:rgb(255,0,0)"><strong>2.4 环境变量 MAKEFILES</strong></span></h2>
<p></p>
<p align="left">如果你的当前环境中定义了环境变量MAKEFILES，那么，make会把这个变量中的值做一个类似于include的动作。这个变量中的值是其它的Makefile，用空格分隔。只是，它和include不同的是，从这个环境变中引入的Makefile的“目标”不会起作用，如果环境变量中定义的文件发现错误，make也会不理。</p>
<p align="left"><span style="font-size:12px">但是在这里我还是建议不要使用这个环境变量，因为只要这个变量一被定义，那么当你使用make时，所有的Makefile都会受到它的影响，这绝不是你想看到的。在这里提这个事，只是为了告诉大家，也许有时候你的Makefile出现了怪事，那么你可以看看当前环境中有没有定义这个变量。</span></p>
<p align="left"><span style="font-size:12px"><a target="_blank" name="sakmFYqQxnGBk"></a></span></p>
<h2><a name="t13"></a><span style="font-size:12px">2.5 make的工作方式</span></h2>
<p></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000">GNU的make工作时的执行步骤入下：（想来其它的make也是类似）</span></strong></span></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">1.        读入所有的Makefile。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">2.        读入被include的其它Makefile。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">3.        初始化文件中的变量。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">4.        推导隐晦规则，并分析所有规则。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">5.        为所有的目标文件创建依赖关系链。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">6.        根据依赖关系，决定哪些目标要重新生成。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">7.        执行生成命令。</span></p>
</blockquote>
<p align="left"><span style="font-size:12px">1-5步为第一个阶段，6-7为第二个阶段。第一个阶段中，如果定义的变量被使用了，那么，make会把其展开在使用的位置。但make并不会完全马上展开，make使用的是拖延战术，如果变量出现在依赖关系的规则中，那么仅当这条依赖被决定要使用了，变量才会在其内部展开。</span></p>
<p align="left"><span style="font-size:12px">当然，这个工作方式你不一定要清楚，但是知道这个方式你也会对make更为熟悉。有了这个基础，后续部分也就容易看懂了。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saiq29h0Ym1Bc"></a></span></strong></span></p>
<h1><a name="t14"></a><span style="font-size:12px"><strong><span style="color:#ff0000">3 Makefile书写规则</span></strong></span></h1>
<p></p>
<p style="text-align:left" align="center"><span style="font-size:12px"> </span>规则包含两个部分，一个是<strong><span style="font-size:14px; color:#ff0000">依赖关系</span></strong>，一个是<strong><span style="font-size:14px; color:#ff0000">生成目标的方法</span></strong>。</p>
<p align="left"><strong><span style="font-size:14px; color:#3333ff">在Makefile中，规则的顺序是很重要的</span></strong>，因为，<strong><span style="font-size:14px; color:#3333ff">Makefile中只应该有一个最终目标</span></strong>，其它的目标都是被这个目标所连带出来的，所以一定要让make知道你的最终目标是什么。一般来说，定义在Makefile中的目标可能会有很多，但是第一条规则中的目标将被确立为最终的目标。如果第一条规则中的目标有很多个，那么，第一个目标会成为最终的目标。make所完成的也就是这个目标。</p>
<p align="left"><span style="font-size:12px">好了，还是让我们来看一看如何书写规则。</span></p>
<p align="left"><span style="font-size:12px"><a target="_blank" name="samig.o8A6/iY"></a></span></p>
<h2><a name="t15"></a><span style="font-size:12px">3.1 规则举例</span></h2>
<p></p>
<p align="left"><span style="font-size:12px"> foo.o: foo.c defs.h       # foo模块</span></p>
<p align="left"><span style="font-size:12px">           cc -c -g foo.c</span></p>
<p align="left"><span style="font-size:12px">看到这个例子，各位应该不是很陌生了，前面也已说过，foo.o是我们的目标，foo.c和defs.h是目标所依赖的源文件，而只有一个命令“cc -c -g foo.c”（以Tab键开头）。这个规则告诉我们两件事：</span></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">1.        文件的依赖关系，foo.o依赖于foo.c和defs.h的文件，如果foo.c和defs.h的文件日</span><span style="font-size:12px; background-color:rgb(255,255,153)">期要比foo.o文件日期要新，或是foo.o不存在，那么依赖关系发生。</span></p>
<p align="left"><span style="background-color:rgb(255,255,153)"><span style="font-size:12px">2.        如果生成（或更新）foo.o文件。也就是那个cc命令，其说明了，如何生成foo.o这个文件。（当然foo.c文件include了defs.h文件</span>）</span></p>
</blockquote>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saRuj5N56iBD2"></a></span></strong></span></p>
<h2><a name="t16"></a><span style="font-size:12px"><strong><span style="color:#ff0000">3.2 规则的语法</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">     targets : prerequisites</span></p>
<p align="left"><span style="font-size:12px">       command</span></p>
<p align="left"><span style="font-size:12px">       ...</span></p>
<p align="left"><span style="font-size:12px">或是这样：</span></p>
<p align="left"><span style="font-size:12px">     targets : prerequisites ; command</span></p>
<p align="left"><span style="font-size:12px">           command</span></p>
<p align="left"><span style="font-size:12px">           ...</span></p>
<p align="left"><span style="font-size:12px">targets是文件名，以空格分开，可以使用通配符。一般来说，我们的目标基本上是一个文件，但也有可能是多个文件。</span></p>
<p align="left"><span style="font-size:12px">command是命令行，如果其不与“target:prerequisites”在一行，那么，必须以[Tab键]开头，如果和prerequisites在一行，那么可以用分号做为分隔。（见上）</span></p>
<p align="left"><span style="font-size:12px">prerequisites也就是目标所依赖的文件（或依赖目标）。如果其中的某个文件要比目标文件要新，那么，目标就被认为是“过时的”，被认为是需要重生成的。这个在前面已经讲过了。</span></p>
<p align="left"><span style="font-size:12px">如果命令太长，你可以使用反斜框（‘\’）作为换行符。make对一行上有多少个字符没有限制。规则告诉make两件事，文件的依赖关系和如何成成目标文件。</span></p>
<p align="left"><span style="font-size:12px">一般来说，make会以UNIX的标准Shell，也就是/bin/sh来执行命令。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saCyyQ9dQni8o"></a></span></strong></span></p>
<h2><a name="t17"></a><span style="font-size:12px"><strong><span style="color:#ff0000">3.3 在规则中使用通配符</span></strong></span></h2>
<p></p>
<p align="left">     如果我们想定义一系列比较类似的文件，我们很自然地就想起使用通配符。make支持三各通配符：“*”，“?”和“[...]”。这是和Unix的B-Shell是相同的。<br>
<br>
<strong><span style="font-size:18px; color:#ff0000">"~"</span></strong></p>
<p align="left"><span style="font-size:12px">波浪号（“~”）字符在文件名中也有比较特殊的用途。如果是“~/test”，这就表示当前用户的$HOME目录下的test目录。而“~hchen/test”则表示用户hchen的宿主目录下的test目录。（这些都是Unix下的小知识了，make也支持）而在Windows或是MS-DOS下，用户没有宿主目录，那么波浪号所指的目录则根据环境变量“HOME”而定。</span></p>
<p align="left"><span style="font-size:18px; color:#ff0000"><strong>"*"</strong></span><br>
通配符代替了你一系列的文件，如“*.c”表示所以后缀为c的文件。一个需要我们注意的是，如果我们的文件名中有通配符，如：“*”，那么可以用转义字符“\”，如“\*”来表示真实的“*”字符，而不是任意长度的字符串。</p>
<p align="left"><span style="font-size:12px">好吧，还是先来看几个例子吧：</span></p>
<p align="left"><span style="font-size:12px">   clean:</span></p>
<p align="left"><span style="font-size:12px">        rm -f *.o</span></p>
<p align="left"><span style="font-size:12px">上面这个例子我不不多说了，这是操作系统Shell所支持的通配符。这是在命令中的通配符。</span></p>
<p align="left"><span style="font-size:12px">   print: *.c</span></p>
<p align="left"><span style="font-size:12px">        lpr -p $?</span></p>
<p align="left"><span style="font-size:12px">        touch print</span></p>
<p align="left"><span style="font-size:12px">上面这个例子说明了通配符也可以在我们的规则中，目标print依赖于所有的[.c]文件。其中的“$?”是一个自动化变量，我会在后面给你讲述。</span></p>
<p align="left"><span style="font-size:12px">   objects = *.o</span></p>
<p align="left"><span style="font-size:12px">上面这个例子，表示了，通符同样可以用在变量中。并不是说[*.o]会展开，不！objects的值就是“*.o”。Makefile中的变量其实就是C/C++中的宏。如果你要让通配符在变量中展开，也就是让objects的值是所有[.o]的文件名的集合，那么，你可以这样：</span></p>
<p align="left"><span style="font-size:12px">   objects := $(wildcard *.o)</span></p>
<p align="left"><span style="font-size:12px">这种用法由关键字“wildcard”指出，关于Makefile的关键字，我们将在后面讨论。</span></p>
<p align="left"><span style="font-size:12px"><span style="color:#ff0000"><strong><a target="_blank" name="sa.l9r9vXz/c2"></a></strong></span></span></p>
<h2><a name="t18"></a><span style="font-size:12px"><span style="color:#ff0000"><strong>3.4 文件搜寻</strong></span></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">     在一些大的工程中，有大量的源文件，我们通常的做法是把这许多的源文件分类，并存放在不同的目录中。所以，当make需要去找寻文件的依赖关系时，你可以在文件前加上路径，但最好的方法是把一个路径告诉make，让make在自动去找。</span></p>
<p align="left"><span style="font-size:12px">Makefile文件中的特殊变量“VPATH”就是完成这个功能的，如果没有指明这个变量，make只会在当前的目录中去找寻依赖文件和目标文件。如果定义了这个变量，那么，make就会在当当前目录找不到的情况下，到所指定的目录中去找寻文件了。</span></p>
<p align="left"><span style="font-size:12px">   VPATH = src:../headers</span></p>
<p align="left"><span style="font-size:12px">上面的的定义指定两个目录，“src”和“../headers”，make会按照这个顺序进行搜索。目录由“冒号”分隔。（当然，当前目录永远是最高优先搜索的地方）</span></p>
<p align="left"><span style="font-size:12px">另一个设置文件搜索路径的方法是使用make的“vpath”关键字（注意，它是全小写的），这不是变量，这是一个make的关键字，这和上面提到的那个VPATH变量很类似，但是它更为灵活。它可以指定不同的文件在不同的搜索目录中。这是一个很灵活的功能。它的使用方法有三种：</span></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">1.        vpath &lt; pattern&gt; &lt; directories&gt;    为符合模式&lt; pattern&gt;的文件指定搜索目录&lt;directories&gt;。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">2.        vpath &lt; pattern&gt;                              清除符合模式&lt; pattern&gt;的文件的搜索目录。</span></p>
<p align="left"><span style="font-size:12px; background-color:rgb(255,255,153)">3.        vpath                                                 清除所有已被设置好了的文件搜索目录。</span></p>
</blockquote>
<p align="left"><span style="font-size:12px">vapth使用方法中的&lt; pattern&gt;需要包含“%”字符。“%”的意思是匹配零或若干字符，例如，“%.h”表示所有以“.h”结尾的文件。&lt; pattern&gt;指定了要搜索的文件集，而&lt; directories&gt;则指定了的文件集的搜索的目录。例如：</span></p>
<p align="left"><span style="font-size:12px">   vpath %.h ../headers</span></p>
<p align="left"><span style="font-size:12px">该语句表示，要求make在“../headers”目录下搜索所有以“.h”结尾的文件。（如果某文件在当前目录没有找到的话）</span></p>
<p align="left"><span style="font-size:12px">我们可以连续地使用vpath语句，以指定不同搜索策略。如果连续的vpath语句中出现了相同的&lt; pattern&gt;，或是被重复了的&lt; pattern&gt;，那么，make会按照vpath语句的先后顺序来执行搜索。如：</span></p>
<p align="left"><span style="font-size:12px">   vpath %.c foo</span></p>
<p align="left"><span style="font-size:12px">   vpath %   blish</span></p>
<p align="left"><span style="font-size:12px">   vpath %.c bar</span></p>
<p align="left"><span style="font-size:12px">其表示“.c”结尾的文件，先在“foo”目录，然后是“blish”，最后是“bar”目录。</span></p>
<p align="left"><span style="font-size:12px">   vpath %.c foo:bar</span></p>
<p align="left"><span style="font-size:12px">   vpath %   blish</span></p>
<p align="left"><span style="font-size:12px">而上面的语句则表示“.c”结尾的文件，先在“foo”目录，然后是“bar”目录，最后才是“blish”目录。</span></p>
<p align="left"><span style="font-size:12px"><span style="color:#ff0000"><strong><a target="_blank" name="sax9yWM/IDfvE"></a></strong></span></span></p>
<h2><a name="t19"></a><span style="font-size:12px"><span style="color:#ff0000"><strong>3.5 伪目标</strong></span></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">最早先的一个例子中，我们提到过一个“clean”的目标，这是一个“伪目标”，</span></p>
<p align="left"><span style="font-size:12px">   clean:</span></p>
<p align="left"><span style="font-size:12px">           rm *.o temp</span></p>
<p align="left"><span style="font-size:12px">正像我们前面例子中的“clean”一样，即然我们生成了许多文件编译文件，我们也应该提供一个清除它们的“目标”以备完整地重编译而用。 （以“make clean”来使用该目标）</span></p>
<p align="left"><span style="font-size:12px">因为，我们并不生成“clean”这个文件。“伪目标”并不是一个文件，只是一个标签，由于“伪目标”不是文件，所以make无法生成它的依赖关系和决定它是否要执行。我们只有通过显示地指明这个“目标”才能让其生效。当然，“伪目标”的取名不能和文件名重名，不然其就失去了“伪目标”的意义了。</span></p>
<p align="left"><span style="font-size:12px">当然，为了避免和文件重名的这种情况，我们可以使用一个特殊的标记“.PHONY”来显示地指明一个目标是“伪目标”，向make说明，不管是否有这个文件，这个目标就是“伪目标”。</span></p>
<p align="left"><span style="font-size:12px">   .PHONY : clean</span></p>
<p align="left"><span style="font-size:12px">只要有这个声明，不管是否有“clean”文件，要运行“clean”这个目标，只有“make clean”这样。于是整个过程可以这样写：</span></p>
<p align="left"><span style="font-size:12px">    .PHONY: clean</span></p>
<p align="left"><span style="font-size:12px">   clean:</span></p>
<p align="left"><span style="font-size:12px">           rm *.o temp</span></p>
<p align="left"><span style="font-size:12px">伪目标一般没有依赖的文件。但是，我们也可以为伪目标指定所依赖的文件。伪目标同样可以作为“默认目标”，只要将其放在第一个。一个示例就是，如果你的Makefile需要一口气生成若干个可执行文件，但你只想简单地敲一个make完事，并且，所有的目标文件都写在一个Makefile中，那么你可以使用“伪目标”这个特性：</span></p>
<p align="left"><span style="font-size:12px">   all : prog1 prog2 prog3</span></p>
<p align="left"><span style="font-size:12px">   .PHONY : all</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   prog1 : prog1.o utils.o</span></p>
<p align="left"><span style="font-size:12px">           cc -o prog1 prog1.o utils.o</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   prog2 : prog2.o</span></p>
<p align="left"><span style="font-size:12px">           cc -o prog2 prog2.o</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   prog3 : prog3.o sort.o utils.o</span></p>
<p align="left"><span style="font-size:12px">           cc -o prog3 prog3.o sort.o utils.o</span></p>
<p align="left"><span style="font-size:12px">我们知道，Makefile中的第一个目标会被作为其默认目标。我们声明了一个“all”的伪目标，其依赖于其它三个目标。由于伪目标的特性是，总是被执行的，所以其依赖的那三个目标就总是不如“all”这个目标新。所以，其它三个目标的规则总是会被决议。也就达到了我们一口气生成多个目标的目的。“.PHONY : all”声明了“all”这个目标为“伪目标”。</span></p>
<p align="left"><span style="font-size:12px">随便提一句，从上面的例子我们可以看出，目标也可以成为依赖。所以，伪目标同样也可成为依赖。看下面的例子：</span></p>
<p align="left"><span style="font-size:12px">   .PHONY: cleanall cleanobj cleandiff</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   cleanall : cleanobj cleandiff</span></p>
<p align="left"><span style="font-size:12px">           rm program</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   cleanobj :</span></p>
<p align="left"><span style="font-size:12px">           rm *.o</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   cleandiff :</span></p>
<p align="left"><span style="font-size:12px">           rm *.diff</span></p>
<p align="left"><span style="font-size:12px">“makeclean”将清除所有要被清除的文件。“cleanobj”和“cleandiff”这两个伪目标有点像“子程序”的意思。我们可以输入“makecleanall”和“make cleanobj”和“makecleandiff”命令来达到清除不同种类文件的目的</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="savYQiB4DeEVQ"></a></span></strong></span></p>
<h2><a name="t20"></a><span style="font-size:12px"><strong><span style="color:#ff0000">3.6 多目标</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">Makefile的规则中的目标可以不止一个，其支持多目标，有可能我们的多个目标同时依赖于一个文件，并且其生成的命令大体类似。于是我们就能把其合并起来。当然，多个目标的生成规则的执行命令是同一个，这可能会可我们带来麻烦，不过好在我们的可以使用一个自动化变量“$@”（关于自动化变量，将在后面讲述），这个变量表示着目前规则中所有的目标的集合，这样说可能很抽象，还是看一个例子吧。</span></p>
<p align="left"><span style="font-size:12px">   bigoutput littleoutput : text.g</span></p>
<p align="left"><span style="font-size:12px">           generate text.g -$(subst output,,$@) &gt; $@</span></p>
<p align="left"><span style="font-size:12px">   上述规则等价于：</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   bigoutput : text.g</span></p>
<p align="left"><span style="font-size:12px">           generate text.g -big &gt; bigoutput</span></p>
<p align="left"><span style="font-size:12px">   littleoutput : text.g</span></p>
<p align="left"><span style="font-size:12px">           generate text.g -little &gt; littleoutput</span></p>
<p align="left"><span style="font-size:12px">其中，-$(subst output,,$@)中的“$”表示执行一个Makefile的函数，函数名为subst，后面的为参数。关于函数，将在后面讲述。这里的这个函数是截取字符串的意思，“$@”表示目标的集合，就像一个数组，“$@”依次取出目标，并执于命令。</span></p>
<p align="left"><span style="font-size:12px"><span style="color:#ff0000"><strong><a target="_blank" name="sa0U2FeigPDZs"></a></strong></span></span></p>
<h2><a name="t21"></a><span style="font-size:12px"><span style="color:#ff0000"><strong>3.7 静态模式</strong></span></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">静态模式可以更加容易地定义多目标的规则，可以让我们的规则变得更加的有弹性和灵活。我们还是先来看一下语法：</span></p>
<p align="left"><span style="font-size:12px">&lt;targets...&gt;: &lt;target-pattern&gt;: &lt;prereq-patterns ...&gt;</span></p>
<p align="left"><span style="font-size:12px">　　　&lt;commands&gt;</span></p>
<p align="left"><span style="font-size:12px">...</span></p>
<p align="left"><span style="font-size:12px">targets定义了一系列的目标文件，可以有通配符。是目标的一个集合。</span></p>
<p align="left"><span style="font-size:12px">target-parrtern是指明了targets的模式，也就是的目标集模式。</span></p>
<p align="left"><span style="font-size:12px">prereq-parrterns是目标的依赖模式，它对target-parrtern形成的模式再进行一次依赖目标的定义。</span></p>
<p align="left"><span style="font-size:12px">这样描述这三个东西，可能还是没有说清楚，还是举个例子来说明一下吧。如果我们的&lt;target-parrtern&gt;定义成“%.o”，意思是我们的集合中都是以“.o”结尾的，而如果我们的&lt;prereq-parrterns&gt;定义成“%.c”，意思是对&lt;target-parrtern&gt;所形成的目标集进行二次定义，其计算方法是，取&lt;target-parrtern&gt;模式中的“%”（也就是去掉了[.o]这个结尾），并为其加上[.c]这个结尾，形成的新集合。</span></p>
<p align="left"><span style="font-size:12px">所以，我们的“目标模式”或是“依赖模式”中都应该有“%”这个字符，如果你的文件名中有“%”那么你可以使用反斜杠“\”进行转义，来标明真实的“%”字符。</span></p>
<p align="left"><span style="font-size:12px">看一个例子：</span></p>
<p align="left"><span style="font-size:12px">   objects = foo.o bar.o</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   all: $(objects)</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   $(objects): %.o: %.c</span></p>
<p align="left"><span style="font-size:12px">           $(CC) -c $(CFLAGS) $&lt; -o $@</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">上面的例子中，指明了我们的目标从$object中获取，“%.o”表明要所有以“.o”结尾的目标，也就是“foo.o bar.o”，也就是变量$object集合的模式，而依赖模式“%.c”则取模式“%.o”的“%”，也就是“foobar”，并为其加下“.c”的后缀，于是，我们的依赖目标就是“foo.cbar.c”。而命令中的“$&lt;”和“$@”则是自动化变量，“$&lt;”表示所有的依赖目标集（也就是“foo.c bar.c”），“$@”表示目标集（也褪恰癴oo.o
 bar.o”）。于是，上面的规则展开后等价于下面的规则：</span></p>
<p align="left"><span style="font-size:12px">   foo.o : foo.c</span></p>
<p align="left"><span style="font-size:12px">           $(CC) -c $(CFLAGS) foo.c -o foo.o</span></p>
<p align="left"><span style="font-size:12px">   bar.o : bar.c</span></p>
<p align="left"><span style="font-size:12px">           $(CC) -c $(CFLAGS) bar.c -o bar.o</span></p>
<p align="left"><span style="font-size:12px">试想，如果我们的“%.o”有几百个，那种我们只要用这种很简单的“静态模式规则”就可以写完一堆规则，实在是太有效率了。“静态模式规则”的用法很灵活，如果用得好，那会一个很强大的功能。再看一个例子：</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   files = foo.elc bar.o lose.o</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   $(filter %.o,$(files)): %.o: %.c</span></p>
<p align="left"><span style="font-size:12px">           $(CC) -c $(CFLAGS) $&lt; -o $@</span></p>
<p align="left"><span style="font-size:12px">   $(filter %.elc,$(files)): %.elc: %.el</span></p>
<p align="left"><span style="font-size:12px">           emacs -f batch-byte-compile $&lt;</span></p>
<p align="left"><span style="font-size:12px">$(filter%.o,$(files))表示调用Makefile的filter函数，过滤“$filter”集，只要其中模式为“%.o”的内容。其的它内容，我就不用多说了吧。这个例字展示了Makefile中更大的弹性。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="sar/BOa9ebBdQ"></a></span></strong></span></p>
<h2><a name="t22"></a><span style="font-size:12px"><strong><span style="color:#ff0000">3.8 自动生成依赖性</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">在Makefile中，我们的依赖关系可能会需要包含一系列的头文件，比如，如果我们的main.c中有一句“#include "defs.h"”，那么我们的依赖关系应该是：</span></p>
<p align="left"><span style="font-size:12px">   main.o : main.c defs.h</span></p>
<p align="left"><span style="font-size:12px">但是，如果是一个比较大型的工程，你必需清楚哪些C文件包含了哪些头文件，并且，你在加入或删除头文件时，也需要小心地修改Makefile，这是一个很没有维护性的工作。为了避免这种繁重而又容易出错的事情，我们可以使用C/C++编译的一个功能。大多数的C/C++编译器都支持一个“-M”的选项，即自动找寻源文件中包含的头文件，并生成一个依赖关系。例如，如果我们执行下面的命令：</span></p>
<p align="left"><span style="font-size:12px">   cc -M main.c</span></p>
<p align="left"><span style="font-size:12px">其输出是：</span></p>
<p align="left"><span style="font-size:12px">   main.o : main.c defs.h</span></p>
<p align="left"><span style="font-size:12px">于是由编译器自动生成的依赖关系，这样一来，你就不必再手动书写若干文件的依赖关系，而由编译器自动生成了。需要提醒一句的是，如果你使用GNU的C/C++编译器，你得用“-MM”参数，不然，“-M”参数会把一些标准库的头文件也包含进来。</span></p>
<p align="left"><span style="font-size:12px">gcc-M main.c的输出是：</span></p>
<p align="left"><span style="font-size:12px">   main.o: main.c defs.h /usr/include/stdio.h /usr/include/features.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/lib/gcc-lib/i486-suse-linux/2.95.3/include/stddef.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/include/bits/types.h /usr/include/bits/pthreadtypes.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/include/bits/sched.h /usr/include/libio.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/include/_G_config.h /usr/include/wchar.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/include/bits/wchar.h /usr/include/gconv.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/lib/gcc-lib/i486-suse-linux/2.95.3/include/stdarg.h \</span></p>
<p align="left"><span style="font-size:12px">        /usr/include/bits/stdio_lim.h</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">gcc-MM main.c的输出则是：</span></p>
<p align="left"><span style="font-size:12px">   main.o: main.c defs.h</span></p>
<p align="left"><span style="font-size:12px">那么，编译器的这个功能如何与我们的Makefile联系在一起呢。因为这样一来，我们的Makefile也要根据这些源文件重新生成，让Makefile自已依赖于源文件？这个功能并不现实，不过我们可以有其它手段来迂回地实现这一功能。GNU组织建议把编译器为每一个源文件的自动生成的依赖关系放到一个文件中，为每一个“name.c”的文件都生成一个“name.d”的Makefile文件，[.d]文件中就存放对应[.c]文件的依赖关系。</span></p>
<p align="left"><span style="font-size:12px">于是，我们可以写出[.c]文件和[.d]文件的依赖关系，并让make自动更新或自成[.d]文件，并把其包含在我们的主Makefile中，这样，我们就可以自动化地生成每个文件的依赖关系了。</span></p>
<p align="left"><span style="font-size:12px">这里，我们给出了一个模式规则来产生[.d]文件：</span></p>
<p align="left"><span style="font-size:12px">   %.d: %.c</span></p>
<p align="left"><span style="font-size:12px">           @set -e; rm -f $@; \</span></p>
<p align="left"><span style="font-size:12px">            $(CC) -M $(CPPFLAGS) $&lt; &gt; $@.<span class="MathJax_Preview"></span><div class="MathJax_Display" role="textbox" aria-readonly="true" style="text-align: center;"><span class="MathJax" id="MathJax-Element-1-Frame" style=""><nobr><span class="math" id="MathJax-Span-1" style="width: 0.021em; display: inline-block;"><span style="display: inline-block; position: relative; width: 0em; height: 0px; font-size: 133%;"><span style="position: absolute; clip: rect(3.822em, 1000em, 4.198em, -0.564em); top: -4.01em; left: 0em;"><span class="mrow" id="MathJax-Span-2"></span><span style="display: inline-block; width: 0px; height: 4.01em;"></span></span></span><span style="border-left: 0em solid; display: inline-block; overflow: hidden; width: 0px; height: 0.167em; vertical-align: -0.083em;"></span></span></nobr></span></div><script type="math/tex; mode=display" id="MathJax-Element-1"></script>; \</span></p>
<p align="left"><span style="font-size:12px">            sed 's,<span class="MathJax_Preview"></span><span class="MathJax" id="MathJax-Element-2-Frame" role="textbox" aria-readonly="true" style=""><nobr><span class="math" id="MathJax-Span-3" style="width: 2.438em; display: inline-block;"><span style="display: inline-block; position: relative; width: 1.817em; height: 0px; font-size: 133%;"><span style="position: absolute; clip: rect(1.255em, 1000em, 2.437em, -0.509em); top: -2.193em; left: 0em;"><span class="mrow" id="MathJax-Span-4"><span class="texatom" id="MathJax-Span-5"><span class="mrow" id="MathJax-Span-6"><span class="mo" id="MathJax-Span-7" style="font-family: MathJax_Main;">$</span></span></span><span class="mo" id="MathJax-Span-8" style="font-family: MathJax_Main; padding-left: 0.222em;">∗</span></span><span style="display: inline-block; width: 0px; height: 2.193em;"></span></span></span><span style="border-left: 0em solid; display: inline-block; overflow: hidden; width: 0px; height: 1.239em; vertical-align: -0.158em;"></span></span></nobr></span><script type="math/tex" id="MathJax-Element-2"></script>\.o[ :]*,\1.o $@ : ,g' &lt; $@.<span class="MathJax_Preview"></span><div class="MathJax_Display" role="textbox" aria-readonly="true" style="text-align: center;"><span class="MathJax" id="MathJax-Element-3-Frame" style=""><nobr><span class="math" id="MathJax-Span-9" style="width: 0.021em; display: inline-block;"><span style="display: inline-block; position: relative; width: 0em; height: 0px; font-size: 133%;"><span style="position: absolute; clip: rect(3.822em, 1000em, 4.198em, -0.564em); top: -4.01em; left: 0em;"><span class="mrow" id="MathJax-Span-10"></span><span style="display: inline-block; width: 0px; height: 4.01em;"></span></span></span><span style="border-left: 0em solid; display: inline-block; overflow: hidden; width: 0px; height: 0.167em; vertical-align: -0.083em;"></span></span></nobr></span></div><script type="math/tex; mode=display" id="MathJax-Element-3"></script> &gt; $@; \</span></p>
<p align="left"><span style="font-size:12px">            rm -f $@.<span class="MathJax_Preview"></span><div class="MathJax_Display" role="textbox" aria-readonly="true" style="text-align: center;"><span class="MathJax" id="MathJax-Element-4-Frame" style=""><nobr><span class="math" id="MathJax-Span-11" style="width: 0.021em; display: inline-block;"><span style="display: inline-block; position: relative; width: 0em; height: 0px; font-size: 133%;"><span style="position: absolute; clip: rect(3.822em, 1000em, 4.198em, -0.564em); top: -4.01em; left: 0em;"><span class="mrow" id="MathJax-Span-12"></span><span style="display: inline-block; width: 0px; height: 4.01em;"></span></span></span><span style="border-left: 0em solid; display: inline-block; overflow: hidden; width: 0px; height: 0.167em; vertical-align: -0.083em;"></span></span></nobr></span></div><script type="math/tex; mode=display" id="MathJax-Element-4"></script></span></p>
<p align="left"><span style="font-size:12px">这个规则的意思是，所有的[.d]文件依赖于[.c]文件，“rm-f $@”的意思是删除所有的目标，也就是[.d]文件，第二行的意思是，为每个依赖文件“$&lt;”，也就是[.c]文件生成依赖文件，“$@”表示模式“%.d”文件，如果有一个C文件是name.c，那么“%”就是“name”，“<span class="MathJax_Preview"></span><div class="MathJax_Display" role="textbox" aria-readonly="true" style="text-align: center;"><span class="MathJax" id="MathJax-Element-5-Frame" style=""><nobr><span class="math" id="MathJax-Span-13" style="width: 0.021em; display: inline-block;"><span style="display: inline-block; position: relative; width: 0em; height: 0px; font-size: 133%;"><span style="position: absolute; clip: rect(3.822em, 1000em, 4.198em, -0.564em); top: -4.01em; left: 0em;"><span class="mrow" id="MathJax-Span-14"></span><span style="display: inline-block; width: 0px; height: 4.01em;"></span></span></span><span style="border-left: 0em solid; display: inline-block; overflow: hidden; width: 0px; height: 0.167em; vertical-align: -0.083em;"></span></span></nobr></span></div><script type="math/tex; mode=display" id="MathJax-Element-5"></script>”意为一个随机编号，第二行生成的文件有可能是“name.d.12345”，第三行使用sed命令做了一个替换，关于sed命令的用法请参看相关的使用文档。第四行就是删除临时文件。</span></p>
<p align="left"><span style="font-size:12px">总而言之，这个模式要做的事就是在编译器生成的依赖关系中加入[.d]文件的依赖，即把依赖关系：</span></p>
<p align="left"><span style="font-size:12px">   main.o : main.c defs.h</span></p>
<p align="left"><span style="font-size:12px">转成：</span></p>
<p align="left"><span style="font-size:12px">   main.o main.d : main.c defs.h</span></p>
<p align="left"><span style="font-size:12px">于是，我们的[.d]文件也会自动更新了，并会自动生成了，当然，你还可以在这个[.d]文件中加入的不只是依赖关系，包括生成的命令也可一并加入，让每个[.d]文件都包含一个完赖的规则。一旦我们完成这个工作，接下来，我们就要把这些自动生成的规则放进我们的主Makefile中。我们可以使用Makefile的“include”命令，来引入别的Makefile文件（前面讲过），例如：</span></p>
<p align="left"><span style="font-size:12px">   sources = foo.c bar.c</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   include $(sources:.c=.d)</span></p>
<p align="left"><span style="font-size:12px">上述语句中的“$(sources:.c=.d)”中的“.c=.d”的意思是做一个替换，把变量$(sources)所有[.c]的字串都替换成[.d]，关于这个“替换”的内容，在后面我会有更为详细的讲述。当然，你得注意次序，因为include是按次来载入文件，最先载入的[.d]文件中的目标会成为默认目标</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saciXNKlLtQME"></a></span></strong></span></p>
<h1><a name="t23"></a><span style="font-size:12px"><strong><span style="color:#ff0000">4 Makefile 书写命令</span></strong></span></h1>
<p></p>
<p style="text-align:left" align="center">      每条规则中的命令和操作系统Shell的命令行是一致的。make会一按顺序一条一条的执行命令，每条命令的开头必须以[Tab]键开头，除非，命令是紧跟在依赖规则后面的分号后的。在命令行之间中的空格或是空行会被忽略，但是如果该空格或空行是以Tab键开头的，那么make会认为其是一个空命令。</p>
<p align="left">我们在UNIX下可能会使用不同的Shell，但是make的命令默认是被“/bin/sh”——UNIX的标准Shell解释执行的。除非你特别指定一个其它的Shell。Makefile中，“#”是注释符，很像C/C++中的“//”，其后的本行字符都被注释。</p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saCADAE0R8KnA"></a></span></strong></span></p>
<h2><a name="t24"></a><span style="font-size:12px"><strong><span style="color:#ff0000">4.1 显示命令</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">通常，make会把其要执行的命令行在命令执行前输出到屏幕上。当我们用“@”字符在命令行前，那么，这个命令将不被make显示出来，最具代表性的例子是，我们用这个功能来像屏幕显示一些信息。如：</span></p>
<p align="left"><span style="font-size:12px">   @echo 正在编译XXX模块......</span></p>
<p align="left"><span style="font-size:12px">当make执行时，会输出“正在编译XXX模块......”字串，但不会输出命令，如果没有“@”，那么，make将输出：</span></p>
<p align="left"><span style="font-size:12px">   echo 正在编译XXX模块......</span></p>
<p align="left"><span style="font-size:12px">   正在编译XXX模块......</span></p>
<p align="left"><span style="font-size:12px">如果make执行时，带入make参数“-n”或“--just-print”，那么其只是显示命令，但不会执行命令，这个功能很有利于我们调试我们的Makefile，看看我们书写的命令是执行起来是什么样子的或是什么顺序的。</span></p>
<p align="left"><span style="font-size:12px">而make参数“-s”或“--slient”则是全面禁止命令的显示。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saNGoM/Hp.BSg"></a></span></strong></span></p>
<h2><a name="t25"></a><span style="font-size:12px"><strong><span style="color:#ff0000">4.2 命令执行</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">当依赖目标新于目标时，也就是当规则的目标需要被更新时，make会一条一条的执行其后的命令。需要注意的是，如果你要让上一条命令的结果应用在下一条命令时，你应该使用分号分隔这两条命令。比如你的第一条命令是cd命令，你希望第二条命令得在cd之后的基础上运行，那么你就不能把这两条命令写在两行上，而应该把这两条命令写在一行上，用分号分隔。如：</span></p>
<p align="left"><span style="font-size:12px">   示例一：</span></p>
<p align="left"><span style="font-size:12px">       exec:</span></p>
<p align="left"><span style="font-size:12px">               cd /home/hchen</span></p>
<p align="left"><span style="font-size:12px">               pwd</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   示例二：</span></p>
<p align="left"><span style="font-size:12px">       exec:</span></p>
<p align="left"><span style="font-size:12px">               cd /home/hchen; pwd</span></p>
<p align="left"><span style="font-size:12px">当我们执行“make exec”时，第一个例子中的cd没有作用，pwd会打印出当前的Makefile目录，而第二个例子中，cd就起作用了，pwd会打印出“/home/hchen”。</span></p>
<p align="left"><span style="font-size:12px">make一般是使用环境变量SHELL中所定义的系统Shell来执行命令，默认情况下使用UNIX的标准Shell——/bin/sh来执行命令。但在MS-DOS下有点特殊，因为MS-DOS下没有SHELL环境变量，当然你也可以指定。如果你指定了UNIX风格的目录形式，首先，make会在SHELL所指定的路径中找寻命令解释器，如果找不到，其会在当前盘符中的当前目录中寻找，如果再找不到，其会在PATH环境变量中所定义的所有路径中寻找。MS-DOS中，如果你定义的命令解释器没有找到，其会给你的命令解释器加上诸如“.exe”、“.com”、“.bat”、“.sh”等后缀。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saejriK4eEx6A"></a></span></strong></span></p>
<h2><a name="t26"></a><span style="font-size:12px"><strong><span style="color:#ff0000">4.3 命令出错</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">      每当命令运行完后，make会检测每个命令的返回码，如果命令返回成功，那么make会执行下一条命令，当规则中所有的命令成功返回后，这个规则就算是成功完成了。如果一个规则中的某个命令出错了（命令退出码非零），那么make就会终止执行当前规则，这将有可能终止所有规则的执行。</span></p>
<p align="left"><span style="font-size:12px">有些时候，命令的出错并不表示就是错误的。例如mkdir命令，我们一定需要建立一个目录，如果目录不存在，那么mkdir就成功执行，万事大吉，如果目录存在，那么就出错了。我们之所以使用mkdir的意思就是一定要有这样的一个目录，于是我们就不希望mkdir出错而终止规则的运行。</span></p>
<p align="left"><span style="font-size:12px">为了做到这一点，忽略命令的出错，我们可以在Makefile的命令行前加一个减号“-”（在Tab键之后），标记为不管命令出不出错都认为是成功的。如：</span></p>
<p align="left"><span style="font-size:12px">  clean:</span></p>
<p align="left"><span style="font-size:12px">           -rm -f *.o</span></p>
<p align="left"><span style="font-size:12px">还有一个全局的办法是，给make加上“-i”或是“--ignore-errors”参数，那么，Makefile中所有命令都会忽略错误。而如果一个规则是以“.IGNORE”作为目标的，那么这个规则中的所有命令将会忽略错误。这些是不同级别的防止命令出错的方法，你可以根据你的不同喜欢设置。</span></p>
<p align="left"><span style="font-size:12px">还有一个要提一下的make的参数的是“-k”或是“--keep-going”，这个参数的意思是，如果某规则中的命令出错了，那么就终目该规则的执行，但继续执行其它规则。</span></p>
<p align="left"><span style="font-size:12px"><span style="color:#ff0000"><strong><a target="_blank" name="saRJsMKKuxk32"></a></strong></span></span></p>
<h2><a name="t27"></a><span style="font-size:12px"><span style="color:#ff0000"><strong>4.4 嵌套执行make</strong></span></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">       在一些大的工程中，我们会把我们不同模块或是不同功能的源文件放在不同的目录中，我们可以在每个目录中都书写一个该目录的Makefile，这有利于让我们的Makefile变得更加地简洁，而不至于把所有的东西全部写在一个Makefile中，这样会很难维护我们的Makefile，这个技术对于我们模块编译和分段编译有着非常大的好处。<br>
</span>      例如，我们有一个子目录叫subdir，这个目录下有个Makefile文件，来指明了这个目录下文件的编译规则。那么我们总控的Makefile可以这样书写：</p>
<p align="left">   subsystem:</p>
<p align="left"><span style="font-size:12px">           cd subdir &amp;&amp; $(MAKE)</span></p>
<p align="left"><span style="font-size:12px">其等价于：</span></p>
<p align="left"><span style="font-size:12px"> </span>   subsystem:</p>
<p align="left">           $(MAKE) -C subdir</p>
<p align="left"><span style="font-size:12px">定义$(MAKE)宏变量的意思是，也许我们的make需要一些参数，所以定义成一个变量比较利于维护。这两个例子的意思都是先进入“subdir”目录，然后执行make命令。</span></p>
<p align="left"><span style="font-size:12px">我们把这个Makefile叫做“总控Makefile”，总控Makefile的变量可以传递到下级的Makefile中（如果你显示的声明），但是不会覆盖下层的Makefile中所定义的变量，除非指定了“-e”参数。</span></p>
<p align="left"><span style="font-size:12px">如果你要传递变量到下级Makefile中，那么你可以使用这样的声明：</span></p>
<p align="left"><span style="font-size:12px">export&lt;variable ...&gt;</span></p>
<p align="left"><span style="font-size:12px">如果你不想让某些变量传递到下级Makefile中，那么你可以这样声明：</span></p>
<p align="left"><span style="font-size:12px">unexport&lt;variable ...&gt;</span></p>
<p align="left"><span style="font-size:12px">如：</span></p>
<p align="left"><span style="font-size:12px">   </span>   示例一：</p>
<p align="left">        export variable = value</p>
<p align="left">      <br>
  其等价于：</p>
<p align="left">        variable = value</p>
<p align="left">        export variable</p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">       其等价于：</span></p>
<p align="left"><span style="font-size:12px"> </span>       export variable := value</p>
<p align="left">        其等价于：</p>
<p align="left"> </p>
<p align="left"><span style="font-size:12px">       variable := value</span></p>
<p align="left"><span style="font-size:12px">       export variable</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">   示例二：</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">       export variable += value</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">       其等价于：</span></p>
<p align="left"><span style="font-size:12px"> </span></p>
<p align="left"><span style="font-size:12px">       variable += value</span></p>
<p align="left"><span style="font-size:12px">       export variable</span></p>
<p align="left"><span style="font-size:12px">     如果你要传递所有的变量，那么，只要一个export就行了。后面什么也不用跟，表示传递所有的变量。</span></p>
<p align="left"><span style="font-size:12px">需要注意的是，有两个变量，一个是SHELL，一个是MAKEFLAGS，这两个变量不管你是否export，其总是要传递到下层Makefile中，特别是MAKEFILES变量，其中包含了make的参数信息，如果我们执行“总控Makefile”时有make参数或是在上层Makefile中定义了这个变量，那么MAKEFILES变量将会是这些参数，并会传递到下层Makefile中，这是一个系统级的环境变量。</span></p>
<p align="left"><span style="font-size:12px">但是make命令中的有几个参数并不往下传递，它们是“-C”,“-f”,“-h”“-o”和“-W”（有关Makefile参数的细节将在后面说明），如果你不想往下层传递参数，那么，你可以这样来：</span></p>
<p align="left"><span style="font-size:12px">   </span></p>
<p align="left"><span style="font-size:12px">   subsystem:</span></p>
<p align="left"><span style="font-size:12px">           cd subdir &amp;&amp; $(MAKE) MAKEFLAGS=</span></p>
<p align="left"><span style="font-size:12px">如果你定义了环境变量MAKEFLAGS，那么你得确信其中的选项是大家都会用到的，如果其中有“-t”,“-n”,和“-q”参数，那么将会有让你意想不到的结果，或许会让你异常地恐慌。</span></p>
<p align="left"><span style="font-size:12px">还有一个在“嵌套执行”中比较有用的参数，“-w”或是“--print-directory”会在make的过程中输出一些信息，让你看到目前的工作目录。比如，如果我们的下级make目录是“/home/hchen/gnu/make”，如果我们使用“make -w”来执行，那么当进入该目录时，我们会看到：</span></p>
<p align="left"><span style="font-size:12px">   </span>   make: Entering directory `/home/hchen/gnu/make'.</p>
<p align="left">而在完成下层make后离开目录时，我们会看到：   </p>
<p align="left">   make: Leaving directory `/home/hchen/gnu/make'<br>
<br>
</p>
<p align="left"><span style="font-size:12px">当你使用“-C”参数来指定make下层Makefile时，“-w”会被自动打开的。如果参数中有“-s”（“--slient”）或是“--no-print-directory”，那么，“-w”总是失效的。</span></p>
<p align="left"><span style="font-size:12px"><strong><span style="color:#ff0000"><a target="_blank" name="saVJ9lkWtLG16"></a></span></strong></span></p>
<h2><a name="t28"></a><span style="font-size:12px"><strong><span style="color:#ff0000">4.5 定义命令包</span></strong></span></h2>
<p></p>
<p align="left"><span style="font-size:12px">如果Makefile中出现一些相同命令序列，那么我们可以为这些相同的命令序列定义一个变量。定义这种命令序列的语法以“define”开始，以“endef”结束，如：</span></p>
<p align="left"><span style="font-size:12px">   define run-yacc</span></p>
<p align="left"><span style="font-size:12px">   yacc $(firstword $^)</span></p>
<p align="left"><span style="font-size:12px">   mv y.tab.c $@</span></p>
<p align="left"><span style="font-size:12px">   endef</span></p>
<p align="left"><span style="font-size:12px">这里，“run-yacc”是这个命令包的名字，其不要和Makefile中的变量重名。在“define”和“endef”中的两行就是命令序列。这个命令包中的第一个命令是运行Yacc程序，因为Yacc程序总是生成“y.tab.c”的文件，所以第二行的命令就是把这个文件改改名字。还是把这个命令包放到一个示例中来看看吧。</span></p>
<p align="left"><span style="font-size:12px">   foo.c : foo.y</span></p>
<p align="left"><span style="font-size:12px">           $(run-yacc)</span></p>
<p align="left"><span style="font-size:12px">我们可以看见，要使用这个命令包，我们就好像使用变量一样。在这个命令包的使用中，命令包“run-yacc”中的“$^”就是“foo.y”，“$@”就是“foo.c”（有关这种以“$”开头的特殊变量，我们会在后面介绍），make在执行命令包时，命令包中的每个命令会被依次独立执行。</span></p>
<p align="center"><br>
</p>
<p></p>
<h1><a name="t29"></a><strong><span style="font-size:14px"> 使用变量</span></strong></h1>
————<br>
<br>
       在 Makefile中的定义的变量，就像是C/C++语言中的宏一样，他代表了一个文本字串，在Makefile中执行的时候其会自动原模原样地展开在所使用的地方。其与C/C++所不同的是，你可以在Makefile中改变其值。在Makefile中，变量可以使用在“目标”，“依赖目标”，“命令”或是 Makefile的其它部分中。变量的命名字可以包含字符、数字，下划线（可以是数字开头），但不应该含有“:”、“#”、“=”或是空字符（空格、回车等）。变量是大小写敏感的，“foo”、“Foo”和“FOO”是三个不同的变量名。传统的Makefile的变量名是全大写的命名方式，但我推荐使用大小写搭配的变量名，如：MakeFlags。这样可以避免和系统的变量冲突，而发生意外的事情。有一些变量是很奇怪字串，如“$&lt;”、“$@”等，这些是自动化变量，我会在后面介绍。<br>
<br>
<h2><a name="t30"></a>一、变量的基础</h2>
<br>
    变量在声明时需要给予初值，而在使用时，需要给在变量名前<strong><span style="color:#3333ff">加上“$”符号，但最好用小括号“（）”或是大括号“{}”把变量给包括起来</span></strong>。如果你要使用真实的“$”字符，那么你需要用“$$”来表示。变量可以使用在许多地方，如规则中的“目标”、“依赖”、“命令”以及新的变量中。<br>
<br>
先看一个例子：<br>
<br>
objects = program.o foo.o utils.o<br>
program : $(objects)<br>
cc -o program $(objects)<br>
<br>
$(objects) : defs.h<br>
<span style="color:#3333ff"><br>
变量会在使用它的地方精确地展开，就像C/C++中的宏一样，例如：</span><br>
<br>
foo = c<br>
prog.o : prog.$(foo)<br>
$(foo)$(foo) -$(foo) prog.$(foo)<br>
<br>
<br>
<span style="color:#3333ff">展开后得到：</span><br>
<br>
prog.o : prog.c<br>
cc -c prog.c<br>
<br>
<br>
当然，千万不要在你的Makefile中这样干，这里只是举个例子来表明Makefile中的变量在使用处展开的真实样子。可见其就是一个“替代”的原理。另外，给变量加上括号完全是为了更加安全地使用这个变量，在上面的例子中，如果你不想给变量加上括号，那也可以，但我还是强烈建议你给变量加上括号。<br>
<br>
<h2><a name="t31"></a><strong><span style="color:#ff0000; background-color:rgb(255,255,255)">二、变量中的变量</span></strong></h2>
<br>
在定义变量的值时，我们可以使用其它变量来构造变量的值，在Makefile中有两种方式来在用变量定义变量的值。<br>
<br>
<br>
先看第一种方式，也就是简单的使用“=”号，在“=”左侧是变量，右侧是变量的值，右侧变量的值可以定义在文件的任何一处，也就是说，右侧中的变量不一定非要是已定义好<br>
的值，其也可以使用后面定义的值。如：<br>
<br>
<span style="background-color:rgb(255,255,153)">foo = $(bar)<br>
bar = $(ugh)<br>
ugh = Huh?<br>
<br>
<br>
all:<br>
echo $(foo)</span><br>
<br>
<br>
我们执行“make all”将会打出变量$(foo)的值是“Huh?”（ $(foo)的值是$(bar)，$(bar)的值是$(ugh)，$(ugh)的值是“Huh?”）可见，变量是可以使用后面的变量来定义的。<br>
这个功能有好的地方，也有不好的地方，好的地方是，我们可以把变量的真实值推到后面来定义，如：<br>
<span style="color:#330033; background-color:rgb(255,255,153)"><br>
CFLAGS = $(include_dirs) -O<br>
include_dirs = -Ifoo -Ibar</span><br>
<br>
<br>
当“CFLAGS”在命令中被展开时，会是“-Ifoo -Ibar -O”。但这种形式也有不好的地方<br>
，那就是递归定义，如：<br>
<br>
<br>
CFLAGS = $(CFLAGS) -O<br>
<br>
<br>
或：<br>
<br>
<br>
A = $(B)<br>
B = $(A)<br>
<br>
<br>
这会让make陷入无限的变量展开过程中去，当然，我们的make是有能力检测这样的定义，并会报错。还有就是如果在变量中使用函数，那么，这种方式会让我们的make运行时非常慢，更糟糕的是，他会使用得两个make的函数“wildcard”和“shell”发生不可预知的错误。因为你不会知道这两个函数会被调用多少次。<br>
<br>
为了避免上面的这种方法，我们可以使用make中的另一种用变量来定义变量的方法。这种方法使用的是“:=”操作符，如：<br>
<br>
<br>
x := foo<br>
y := $(x) bar<br>
x := later<br>
<br>
<br>
其等价于：<br>
<br>
<br>
y := foo bar<br>
x := later<br>
<br>
<br>
值得一提的是，这种方法，前面的变量不能使用后面的变量，只能使用前面已定义好了的变量。如果是这样：<br>
<br>
<br>
y := $(x) bar<br>
x := foo<br>
<br>
<br>
那么，y的值是“bar”，而不是“foo bar”。<br>
<br>
<br>
上面都是一些比较简单的变量使用了，让我们来看一个复杂的例子，其中包括了make的函数、条件表达式和一个系统变量“MAKELEVEL”的使用：<br>
<br>
<br>
<span style="background-color:rgb(255,255,153)">ifeq (0,${MAKELEVEL})<br>
cur-dir := $(shell pwd)<br>
whoami := $(shell whoami)<br>
host-type := $(shell arch)<br>
MAKE := ${MAKE} host-type=${host-type} whoami=${whoami}<br>
endif<br>
</span><br>
<br>
关于条件表达式和函数，我们在后面再说，对于系统变量“MAKELEVEL”，其意思是，如果我们的make有一个嵌套执行的动作（参见前面的“嵌套使用make”），那么，这个变量会记录了我们的当前Makefile的调用层数。<br>
<br>
<br>
下面再介绍两个定义变量时我们需要知道的，请先看一个例子，如果我们要定义一个变量，其值是一个空格，那么我们可以这样来：<br>
<br>
nullstring :=<br>
space := $(nullstring) # end of the line<br>
<br>
<br>
nullstring 是一个Empty变量，其中什么也没有，而我们的space的值是一个空格。因为在操作符的右边是很难描述一个空格的，这里采用的技术很管用，先用一个 Empty变量来标明变量的值开始了，而后面采用“#”注释符来表示变量定义的终止，这样，我们可以定义出其值是一个空格的变量。请注意这里关于“#”的使用，注释符“#”的这种特性值得我们注意，如果我们这样定义一个变量：<br>
<br>
dir := /foo/bar # directory to put the frobs in<br>
<br>
dir这个变量的值是“/foo/bar”，后面还跟了4个空格，如果我们这样使用这样变量来指定别的目录——“$(dir)/file”那么就完蛋了。<br>
<br>
<br>
还有一个比较有用的操作符是“?=”，先看示例：<br>
<br>
<br>
FOO ?= bar<br>
<br>
<br>
其含义是，如果FOO没有被定义过，那么变量FOO的值就是“bar”，如果FOO先前被定义过，那么这条语将什么也不做，其等价于：<br>
<br>
<br>
ifeq ($(origin FOO), undefined)<br>
FOO = bar<br>
endif<br>
<br>
<h2><a name="t32"></a><strong>三、变量高级用法</strong></h2>
<br>
<br>
这里介绍两种变量的高级使用方法，第一种是变量值的替换。<br>
<br>
我们可以替换变量中的共有的部分，其格式是“$(var:a=b)”或是“${var:a=b}”，其意思是，把变量“var”中所有以“a”字串“结尾”的“a”替换成“b”字串。这里的“结尾”意思是“空格”或是“结束符”。<br>
<br>
还是看一个示例吧：<br>
<span style="background-color:rgb(255,255,153)"><br>
<br>
foo := a.o b.o c.o<br>
bar := $(foo:.o=.c)</span><br>
<br>
<br>
这个示例中，我们先定义了一个“$(foo)”变量，而第二行的意思是把“$(foo)”中所有以“.o”字串“结尾”全部替换成“.c”，所以我们的“$(bar)”的值就是“a.c b.c c.c”。<br>
<br>
另外一种变量替换的技术是以“静态模式”（参见前面章节）定义的，如：<br>
<br>
<br>
foo := a.o b.o c.o<br>
bar := $(foo:%.o=%.c)<br>
<br>
<br>
这依赖于被替换字串中的有相同的模式，模式中必须包含一个“%”字符，这个例子同样让$(bar)变量的值为“a.c b.c c.c”。<br>
<br>
<br>
第二种高级用法是——“把变量的值再当成变量”。先看一个例子：<br>
<br>
<br>
x = y<br>
y = z<br>
a := $($(x))<br>
<br>
<br>
在这个例子中，$(x)的值是“y”，所以$($(x))就是$(y)，于是$(a)的值就是“z”。（注意，是“x=y”，而不是“x=$(y)”）<br>
<br>
<br>
我们还可以使用更多的层次：<br>
<br>
<br>
x = y<br>
y = z<br>
z = u<br>
a := $($($(x)))<br>
<br>
<br>
这里的$(a)的值是“u”，相关的推导留给读者自己去做吧。<br>
<br>
让我们再复杂一点，使用上“在变量定义中使用变量”的第一个方式，来看一个例子：<br>
<br>
<br>
x = $(y)<br>
y = z<br>
z = Hello<br>
a := $($(x))<br>
<br>
<br>
这里的$($(x))被替换成了$($(y))，因为$(y)值是“z”，所以，最终结果是：a:=$(z)，也就是“Hello”。<br>
<br>
<br>
再复杂一点，我们再加上函数：<br>
<br>
<br>
x = variable1<br>
variable2 := Hello<br>
y = $(subst 1,2,$(x))<br>
z = y<br>
a := $($($(z)))<br>
<br>
<br>
这个例子中，“$($($(z)))”扩展为“$($(y))”，而其再次被扩展为“$($(subst 1,2,$(x)))”。$(x)的值是“variable1”，subst函数把“variable1”中的所有“1”字串替换成“2”字串，于是，“variable1”变成“variable2”，再取其值，所以，最终，$(a)的值就是$(variable2)的值—— “Hello”。（喔，好不容易）<br>
<br>
在这种方式中，或要可以使用多个变量来组成一个变量的名字，然后再取其值：<br>
<br>
first_second = Hello<br>
a = first<br>
b = second<br>
all = $($a_$b)<br>
<br>
<br>
这里的“$a_$b”组成了“first_second”，于是，$(all)的值就是“Hello”。<br>
<br>
<br>
再来看看结合第一种技术的例子：<br>
<br>
<br>
a_objects := a.o b.o c.o<br>
1_objects := 1.o 2.o 3.o<br>
<br>
<br>
sources := $($(a1)_objects:.o=.c)<br>
<br>
<br>
这个例子中，如果$(a1)的值是“a”的话，那么，$(sources)的值就是“a.c b.c c.c”；如果$(a1)的值是“1”，那么$(sources)的值是“1.c 2.c 3.c”。<br>
<br>
再来看一个这种技术和“函数”与“条件语句”一同使用的例子：<br>
<br>
<br>
ifdef do_sort<br>
func := sort<br>
else<br>
func := strip<br>
endif<br>
<br>
bar := a d b g q c<br>
<br>
foo := $($(func) $(bar))<br>
<br>
<br>
这个示例中，如果定义了“do_sort”，那么：foo := $(sort a d b g q c)，于是$(foo)的值就是“a b c d g q”，而如果没有定义“do_sort”，那么：foo := $(sort a d bg q c)，调用的就是strip函数。<br>
<br>
当然，“把变量的值再当成变量”这种技术，同样可以用在操作符的左边：<br>
<br>
<span style="background-color:rgb(255,255,153)">dir = foo<br>
$(dir)_sources := $(wildcard $(dir)/*.c)<br>
define $(dir)_print<br>
lpr $($(dir)_sources)<br>
endef</span><br>
<br>
这个例子中定义了三个变量：“dir”，“foo_sources”和“foo_print”。<br>
<br>
<strong><br>
</strong>
<h2><a name="t33"></a><strong><span style="font-size:14px; color:#ff0000">四、追加变量值</span></strong></h2>
<br>
<br>
我们可以使用“+=”操作符给变量追加值，如：<br>
<br>
<br>
objects = main.o foo.o bar.o utils.o<br>
objects += another.o<br>
<br>
于是，我们的$(objects)值变成：“main.o foo.o bar.o utils.o another.o”（another.o被追加进去了）<br>
<br>
使用“+=”操作符，可以模拟为下面的这种例子：<br>
<br>
<br>
objects = main.o foo.o bar.o utils.o<br>
objects := $(objects) another.o<br>
<br>
<br>
所不同的是，用“+=”更为简洁。<br>
<br>
<br>
如果变量之前没有定义过，那么，“+=”会自动变成“=”，如果前面有变量定义，那么“+=”会继承于前次操作的赋值符。如果前一次的是“:=”，那么“+=”会以“:=”作为其赋值符，如：<br>
<br>
variable := value<br>
variable += more<br>
<br>
<br>
等价于：<br>
<br>
<br>
variable := value<br>
variable := $(variable) more<br>
<br>
<br>
但如果是这种情况：<br>
<br>
<br>
variable = value<br>
variable += more<br>
<br>
<br>
由于前次的赋值符是“=”，所以“+=”也会以“=”来做为赋值，那么岂不会发生变量的递补归定义，这是很不好的，所以make会自动为我们解决这个问题，我们不必担心这个问题。<br>
<br>
<br>
<h2><a name="t34"></a><strong><span style="font-size:14px; color:#ff0000">五、override 指示符</span></strong></h2>
<br>
<br>
如果有变量是通常make的命令行参数设置的，那么Makefile中对这个变量的赋值会被忽略。如果你想在Makefile中设置这类参数的值，那么，你可以使用“override”指示符。其语法是：<br>
<br>
override &lt;variable&gt; = &lt;value&gt;<br>
override &lt;variable&gt; := &lt;value&gt;<br>
<br>
<br>
当然，你还可以追加：<br>
<br>
<br>
override &lt;variable&gt; += &lt;more text&gt;<br>
<br>
<br>
对于多行的变量定义，我们用define指示符，在define指示符前，也同样可以使用ovveride指示符，如：<br>
<br>
<br>
override define foo<br>
bar<br>
endef<br>
<br>
<br>
<h2><a name="t35"></a><strong><span style="font-size:14px; color:#ff0000">六、多行变量</span></strong></h2>
<br>
<br>
还有一种设置变量值的方法是使用define关键字。使用define关键字设置变量的值可以有换行，这有利于定义一系列的命令（前面我们讲过“命令包”的技术就是利用这个关键字）。<br>
<br>
define 指示符后面跟的是变量的名字，而重起一行定义变量的值，定义是以endef关键字结束。其工作方式和“=”操作符一样。变量的值可以包含函数、命令、文字，或是其它变量。因为命令需要以[Tab]键开头，所以如果你用define定义的命令变量中没有以[Tab]键开头，那么make就不会把其认为是命令。<br>
<br>
下面的这个示例展示了define的用法：<br>
<br>
<br>
define two-lines<br>
echo foo<br>
echo $(bar)<br>
endef<br>
<br>
<br>
<h2><a name="t36"></a><strong><span style="font-size:14px; color:#ff0000">七、环境变量</span></strong></h2>
<br>
<br>
make 运行时的系统环境变量可以在make开始运行时被载入到Makefile文件中，但是如果Makefile中已定义了这个变量，或是这个变量由make命令行带入，那么系统的环境变量的值将被覆盖。（如果make指定了“-e”参数，那么，系统环境变量将覆盖Makefile中定义的变量）<br>
<br>
因此，如果我们在环境变量中设置了“CFLAGS”环境变量，那么我们就可以在所有的Makefile中使用这个变量了。这对于我们使用统一的编译参数有比较大的好处。如果Makefile中定义了CFLAGS，那么则会使用Makefile中的这个变量，如果没有定义则使用系统环境变量的值，一个共性和个性的统一，很像“全局变量”和“局部变量”的特性。     当make嵌套调用时（参见前面的“嵌套调用”章节），上层Makefile中定义的变量会以系统环境变量的方式传递到下层的Makefile中。当然，默认情况下，只有通过命令行设置的变量会被传递。而定义在文件中的变量，如果要向下层
 Makefile传递，则需要使用exprot关键字来声明。（参见前面章节）<br>
<br>
   当然，我并不推荐把许多的变量都定义在系统环境中，这样，在我们执行不用的Makefile时，拥有的是同一套系统变量，这可能会带来更多的麻烦。<br>
<br>
<br>
<br>
<span style="color:#ff0000"><strong><br>
</strong></span>
<h2><a name="t37"></a><span style="color:#ff0000"><strong><span style="font-size:12px">八、目标变量</span></strong></span></h2>
<br>
<br>
前面我们所讲的在Makefile中定义的变量都是“全局变量”，在整个文件，我们都可以访问这些变量。当然，“自动化变量”除外，如“$&lt;”等这种类量的自动化变量就属于“规则型变量”，这种变量的值依赖于规则的目标和依赖目标的定义。<br>
<br>
当然，我样同样可以为某个目标设置局部变量，这种变量被称为“Target-specific Variable”，它可以和“全局变量”同名，因为它的作用范围只在这条规则以及连带规则中，所以其值也只在作用范围内有效。而不会影响规则链以外的全局变量的值。<br>
<br>
其语法是：<br>
<br>
<br>
&lt;target ...&gt; : &lt;variable-assignment&gt;<br>
<br>
<br>
&lt;target ...&gt; : overide &lt;variable-assignment&gt;<br>
<br>
<br>
&lt;variable-assignment&gt;可以是前面讲过的各种赋值表达式，如“=”、“:=”、“+=”或是“？=”。第二个语法是针对于make命令行带入的变量，或是系统环境变量。<br>
<br>
这个特性非常的有用，当我们设置了这样一个变量，这个变量会作用到由这个目标所引发的所有的规则中去。如：<br>
<br>
prog : CFLAGS = -g<br>
prog : prog.o foo.o bar.o<br>
$(CC) $(CFLAGS) prog.o foo.o bar.o<br>
<br>
<br>
prog.o : prog.c<br>
$(CC) $(CFLAGS) prog.c<br>
<br>
<br>
foo.o : foo.c<br>
$(CC) $(CFLAGS) foo.c<br>
<br>
<br>
bar.o : bar.c<br>
$(CC) $(CFLAGS) bar.c<br>
<br>
<br>
在这个示例中，不管全局的$(CFLAGS)的值是什么，在prog目标，以及其所引发的所有规则中（prog.o foo.o bar.o的规则），$(CFLAGS)的值都是“-g”<br>
<br>
<br>
<br>
<br>
<h2><a name="t38"></a><span style="font-size:12px; color:#ff0000"><strong>九、模式变量</strong></span></h2>
<br>
<br>
在GNU的make中，还支持模式变量（Pattern-specific Variable），通过上面的目标变量中，我们知道，变量可以定义在某个目标上。模式变量的好处就是，我们可以给定一种“模式”，可以把变量定义在符合这种模式的所有目标上。<br>
<br>
我们知道，make的“模式”一般是至少含有一个“%”的，所以，我们可以以如下方式给所有以[.o]结尾的目标定义目标变量：<br>
<br>
<br>
%.o : CFLAGS = -O<br>
<br>
<br>
同样，模式变量的语法和“目标变量”一样：<br>
<br>
<br>
&lt;pattern ...&gt; : &lt;variable-assignment&gt;<br>
<br>
<br>
&lt;pattern ...&gt; : override &lt;variable-assignment&gt;<br>
<br>
<br>
override同样是针对于系统环境传入的变量，或是make命令行指定的变量。<br>
<br>
<br>
使用条件判断<br>
——————<br>
<br>
<br>
使用条件判断，可以让make根据运行时的不同情况选择不同的执行分支。条件表达式可以是比较变量的值，或是比较变量和常量的值。<br>
<br>
一、示例<br>
<br>
<br>
下面的例子，判断$(CC)变量是否“gcc”，如果是的话，则使用GNU函数编译目标。<br>
<br>
<br>
libs_for_gcc = -lgnu<br>
normal_libs =<br>
<br>
<br>
foo: $(objects)<br>
ifeq ($(CC),gcc)<br>
$(CC) -o foo $(objects) $(libs_for_gcc)<br>
else<br>
$(CC) -o foo $(objects) $(normal_libs)<br>
endif<br>
<br>
<br>
可见，在上面示例的这个规则中，目标“foo”可以根据变量“$(CC)”值来选取不同的函数库来编译程序。<br>
<br>
我们可以从上面的示例中看到三个关键字：ifeq、else和endif。ifeq的意思表示条件语句的开始，并指定一个条件表达式，表达式包含两个参数，以逗号分隔，表达式以圆括号括起。else表示条件表达式为假的情况。endif表示一个条件语句的结束，任何一个条件表达式都应该以endif结束。<br>
<br>
当我们的变量$(CC)值是“gcc”时，目标foo的规则是：<br>
<br>
<br>
foo: $(objects)<br>
$(CC) -o foo $(objects) $(libs_for_gcc)<br>
<br>
<br>
而当我们的变量$(CC)值不是“gcc”时（比如“cc”），目标foo的规则是：<br>
<br>
foo: $(objects)<br>
$(CC) -o foo $(objects) $(normal_libs)<br>
<br>
<br>
当然，我们还可以把上面的那个例子写得更简洁一些：<br>
<br>
<br>
libs_for_gcc = -lgnu<br>
normal_libs =<br>
<br>
<br>
ifeq ($(CC),gcc)<br>
libs=$(libs_for_gcc)<br>
else<br>
libs=$(normal_libs)<br>
endif<br>
<br>
<br>
foo: $(objects)<br>
$(CC) -o foo $(objects) $(libs)<br>
<br>
<br>
<br>
<br>
二、语法<br>
<br>
<br>
条件表达式的语法为：<br>
<br>
<br>
&lt;conditional-directive&gt;<br>
&lt;text-if-true&gt;<br>
endif<br>
<br>
<br>
以及：<br>
<br>
<br>
&lt;conditional-directive&gt;<br>
&lt;text-if-true&gt;<br>
else<br>
&lt;text-if-false&gt;<br>
endif<br>
<br>
<br>
其中&lt;conditional-directive&gt;表示条件关键字，如“ifeq”。这个关键字有四个。<br>
<br>
第一个是我们前面所见过的“ifeq”<br>
<br>
<br>
ifeq (&lt;arg1&gt;, &lt;arg2&gt; )<br>
ifeq '&lt;arg1&gt;' '&lt;arg2&gt;'<br>
ifeq "&lt;arg1&gt;" "&lt;arg2&gt;"<br>
ifeq "&lt;arg1&gt;" '&lt;arg2&gt;'<br>
ifeq '&lt;arg1&gt;' "&lt;arg2&gt;"<br>
<br>
<br>
比较参数“arg1”和“arg2”的值是否相同。当然，参数中我们还可以使用make的函数。如：<br>
<br>
<br>
ifeq ($(strip $(foo)),)<br>
&lt;text-if-empty&gt;<br>
endif<br>
<br>
<br>
这个示例中使用了“strip”函数，如果这个函数的返回值是空（Empty），那么&lt;text-if-empty&gt;就生效。<br>
<br>
第二个条件关键字是“ifneq”。语法是：<br>
<br>
<br>
ifneq (&lt;arg1&gt;, &lt;arg2&gt; )<br>
ifneq '&lt;arg1&gt;' '&lt;arg2&gt;'<br>
ifneq "&lt;arg1&gt;" "&lt;arg2&gt;"<br>
ifneq "&lt;arg1&gt;" '&lt;arg2&gt;'<br>
ifneq '&lt;arg1&gt;' "&lt;arg2&gt;"<br>
<br>
<br>
其比较参数“arg1”和“arg2”的值是否相同，如果不同，则为真。和“ifeq”类似。<br>
<br>
<br>
<br>
<br>
第三个条件关键字是“ifdef”。语法是：<br>
<br>
<br>
ifdef &lt;variable-name&gt;<br>
<br>
<br>
如果变量&lt;variable-name&gt;的值非空，那到表达式为真。否则，表达式为假。当然，&lt;variable-name&gt;同样可以是一个函数的返回值。注意，ifdef只是测试一个变量是否有值，其并不会把变量扩展到当前位置。还是来看两个例子：<br>
<br>
<br>
示例一：<br>
bar =<br>
foo = $(bar)<br>
ifdef foo<br>
frobozz = yes<br>
else<br>
frobozz = no<br>
endif<br>
<br>
<br>
示例二：<br>
foo =<br>
ifdef foo<br>
frobozz = yes<br>
else<br>
frobozz = no<br>
endif<br>
<br>
<br>
第一个例子中，“$(frobozz)”值是“yes”，第二个则是“no”。<br>
<br>
<br>
第四个条件关键字是“ifndef”。其语法是：<br>
<br>
<br>
ifndef &lt;variable-name&gt;<br>
<br>
<br>
这个我就不多说了，和“ifdef”是相反的意思。<br>
<br>
<br>
在&lt;conditional-directive&gt;这一行上，多余的空格是被允许的，但是不能以[Tab]键做为开始（不然就被认为是命令）。而注释符“#”同样也是安全的。“else”和“endif”也<br>
一样，只要不是以[Tab]键开始就行了。<br>
<br>
特别注意的是，make是在读取Makefile时就计算条件表达式的值，并根据条件表达式的值来选择语句，所以，你最好不要把自动化变量（如“$@”等）放入条件表达式中，因为自动化变量是在运行时才有的。<br>
<br>
而且，为了避免混乱，make不允许把整个条件语句分成两部分放在不同的文件中。<br>
<br>
<br>
<br>
<br>
<br>
<h1><a name="t39"></a><span style="font-size:18px; color:#ff0000"><strong>使用函数</strong></span></h1>
<span style="font-size:18px; color:#ff0000"><strong>————</strong></span><br>
<br>
<br>
在Makefile中可以使用函数来处理变量，从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多，不过已经足够我们的操作了。函数调用后，函数的返回值可以当做变量来使用。<br>
<br>
<br>
<h2><a name="t40"></a>一、函数的调用语法</h2>
<br>
<br>
函数调用，很像变量的使用，也是以“$”来标识的，其语法如下：<br>
<br>
<br>
$(&lt;function&gt; &lt;arguments&gt; )<br>
<br>
<br>
或是<br>
<br>
<br>
${&lt;function&gt; &lt;arguments&gt;}<br>
<br>
<br>
这里，&lt;function&gt;就是函数名，make支持的函数不多。&lt;arguments&gt;是函数的参数，参数间以逗号“,”分隔，而函数名和参数之间以“空格”分隔。函数调用以“$”开头，以圆括号或花括号把函数名和参数括起。感觉很像一个变量，是不是？函数中的参数可以使用变量，为了风格的统一，函数和变量的括号最好一样，如使用“$(subst a,b,$(x))”这样的形式，而不是“$(subst a,b,${x})”的形式。因为统一会更清楚，也会减少一些不必要的麻烦。<br>
<br>
<br>
还是来看一个示例：<br>
<br>
<br>
comma:= ,<br>
empty:=<br>
space:= $(empty) $(empty)<br>
foo:= a b c<br>
bar:= $(subst $(space),$(comma),$(foo))<br>
<br>
<br>
在这个示例中，$(comma)的值是一个逗号。$(space)使用了$(empty)定义了一个空格，$(foo)的值是“a b c”，$(bar)的定义用，调用了函数“subst”，这是一个替换函数，这个函数有三个参数，第一个参数是被替换字串，第二个参数是替换字串，第三个参数是替换操作作用的字串。这个函数也就是把$(foo)中的空格替换成逗号，所以$(bar)的值是“<br>
a,b,c”。<br>
<strong><span style="color:#ff0000"><br>
</span></strong>
<h2><a name="t41"></a><strong><span style="color:#ff0000">二、字符串处理函数</span></strong></h2>
<br>
<br>
$(subst &lt;from&gt;,&lt;to&gt;,&lt;text&gt; )<br>
<br>
<br>
名称：字符串替换函数——subst。<br>
功能：把字串&lt;text&gt;中的&lt;from&gt;字符串替换成&lt;to&gt;。<br>
返回：函数返回被替换过后的字符串。<br>
<br>
<br>
示例：<br>
<br>
<br>
$(subst ee,EE,feet on the street)，<br>
<br>
<br>
把“feet on the street”中的“ee”替换成“EE”，返回结果是“fEEt on the strEEt<br>
”。<br>
<br>
<br>
<br>
<br>
$(patsubst &lt;pattern&gt;,&lt;replacement&gt;,&lt;text&gt; )<br>
<br>
<br>
名称：模式字符串替换函数——patsubst。<br>
功能：查找&lt;text&gt;中的单词（单词以“空格”、“Tab”或“回车”“换行”分隔）是否符合模式&lt;pattern&gt;，如果匹配的话，则以&lt;replacement&gt;替换。这里，&lt;pattern&gt;可以包括通配符“%”，表示任意长度的字串。如果&lt;replacement&gt;中也包含“%”，那么，&lt;replacement&gt;中的这个“%”将是&lt;pattern&gt;中的那个“%”所代表的字串。（可以用“\”来转义，以“\%”来表示真实含义的“%”字符）返回：函数返回被替换过后的字符串。<br>
<br>
<br>
示例：<br>
<br>
<br>
$(patsubst %.c,%.o,x.c.c bar.c)<br>
<br>
<br>
把字串“x.c.c bar.c”符合模式[%.c]的单词替换成[%.o]，返回结果是“x.c.o bar.o”<br>
<br>
<br>
备注：<br>
<br>
<br>
这和我们前面“变量章节”说过的相关知识有点相似。如：<br>
<br>
<br>
“$(var:&lt;pattern&gt;=&lt;replacement&gt; )”<br>
相当于<br>
“$(patsubst &lt;pattern&gt;,&lt;replacement&gt;,$(var))”，<br>
<br>
<br>
而“$(var: &lt;suffix&gt;=&lt;replacement&gt; )”<br>
则相当于<br>
“$(patsubst %&lt;suffix&gt;,%&lt;replacement&gt;,$(var))”。<br>
<br>
<br>
例如有：objects = foo.o bar.o baz.o，<br>
那么，“$(objects:.o=.c)”和“$(patsubst %.o,%.c,$(objects))”是一样的。<br>
<br>
<br>
$(strip &lt;string&gt; )<br>
<br>
<br>
名称：去空格函数——strip。<br>
功能：去掉&lt;string&gt;字串中开头和结尾的空字符。<br>
返回：返回被去掉空格的字符串值。<br>
示例：<br>
<br>
<br>
$(strip a b c )<br>
<br>
<br>
把字串“a b c ”去到开头和结尾的空格，结果是“a b c”。<br>
<br>
<br>
$(findstring &lt;find&gt;,&lt;in&gt; )<br>
<br>
<br>
名称：查找字符串函数——findstring。<br>
功能：在字串&lt;in&gt;中查找&lt;find&gt;字串。<br>
返回：如果找到，那么返回&lt;find&gt;，否则返回空字符串。<br>
示例：<br>
<br>
<br>
$(findstring a,a b c)<br>
$(findstring a,b c)<br>
<br>
<br>
第一个函数返回“a”字符串，第二个返回“”字符串（空字符串）<br>
<br>
<br>
$(filter &lt;pattern...&gt;,&lt;text&gt; )<br>
<br>
<br>
名称：过滤函数——filter。<br>
功能：以&lt;pattern&gt;模式过滤&lt;text&gt;字符串中的单词，保留符合模式&lt;pattern&gt;的单词。可<br>
以有多个模式。<br>
返回：返回符合模式&lt;pattern&gt;的字串。<br>
示例：<br>
<br>
<br>
sources := foo.c bar.c baz.s ugh.h<br>
foo: $(sources)<br>
cc $(filter %.c %.s,$(sources)) -o foo<br>
<br>
<br>
$(filter %.c %.s,$(sources))返回的值是“foo.c bar.c baz.s”。<br>
<br>
<br>
$(filter-out &lt;pattern...&gt;,&lt;text&gt; )<br>
<br>
<br>
名称：反过滤函数——filter-out。<br>
功能：以&lt;pattern&gt;模式过滤&lt;text&gt;字符串中的单词，去除符合模式&lt;pattern&gt;的单词。可<br>
以有多个模式。<br>
返回：返回不符合模式&lt;pattern&gt;的字串。<br>
示例：<br>
<br>
<br>
objects=main1.o foo.o main2.o bar.o<br>
mains=main1.o main2.o<br>
<br>
<br>
$(filter-out $(mains),$(objects)) 返回值是“foo.o bar.o”。<br>
<br>
<br>
$(sort &lt;list&gt; )<br>
<br>
<br>
名称：排序函数——sort。<br>
功能：给字符串&lt;list&gt;中的单词排序（升序）。<br>
返回：返回排序后的字符串。<br>
示例：$(sort foo bar lose)返回“bar foo lose” 。<br>
备注：sort函数会去掉&lt;list&gt;中相同的单词。<br>
<br>
<br>
$(word &lt;n&gt;,&lt;text&gt; )<br>
<br>
<br>
名称：取单词函数——word。<br>
功能：取字符串&lt;text&gt;中第&lt;n&gt;个单词。（从一开始）<br>
返回：返回字符串&lt;text&gt;中第&lt;n&gt;个单词。如果&lt;n&gt;比&lt;text&gt;中的单词数要大，那么返回空<br>
字符串。<br>
示例：$(word 2, foo bar baz)返回值是“bar”。<br>
<br>
<br>
$(wordlist &lt;s&gt;,&lt;e&gt;,&lt;text&gt; )<br>
<br>
<br>
名称：取单词串函数——wordlist。<br>
功能：从字符串&lt;text&gt;中取从&lt;s&gt;开始到&lt;e&gt;的单词串。&lt;s&gt;和&lt;e&gt;是一个数字。<br>
返回：返回字符串&lt;text&gt;中从&lt;s&gt;到&lt;e&gt;的单词字串。如果&lt;s&gt;比&lt;text&gt;中的单词数要大，那<br>
么返回空字符串。如果&lt;e&gt;大于&lt;text&gt;的单词数，那么返回从&lt;s&gt;开始，到&lt;text&gt;结束的单<br>
词串。<br>
示例： $(wordlist 2, 3, foo bar baz)返回值是“bar baz”。<br>
<br>
<br>
$(words &lt;text&gt; )<br>
<br>
<br>
名称：单词个数统计函数——words。<br>
功能：统计&lt;text&gt;中字符串中的单词个数。<br>
返回：返回&lt;text&gt;中的单词数。<br>
示例：$(words, foo bar baz)返回值是“3”。<br>
备注：如果我们要取&lt;text&gt;中最后的一个单词，我们可以这样：$(word $(words &lt;text&gt; <br>
),&lt;text&gt; )。<br>
<br>
<br>
$(firstword &lt;text&gt; )<br>
<br>
<br>
名称：首单词函数——firstword。<br>
功能：取字符串&lt;text&gt;中的第一个单词。<br>
返回：返回字符串&lt;text&gt;的第一个单词。<br>
示例：$(firstword foo bar)返回值是“foo”。<br>
备注：这个函数可以用word函数来实现：$(word 1,&lt;text&gt; )。<br>
<br>
<br>
以上，是所有的字符串操作函数，如果搭配混合使用，可以完成比较复杂的功能。这里，<br>
举一个现实中应用的例子。我们知道，make使用“VPATH”变量来指定“依赖文件”的搜索<br>
路径。于是，我们可以利用这个搜索路径来指定编译器对头文件的搜索路径参数CFLAGS，<br>
如：<br>
<br>
<br>
override CFLAGS += $(patsubst %,-I%,$(subst :, ,$(VPATH)))<br>
<br>
<br>
如果我们的“$(VPATH)”值是“src:../headers”，那么“$(patsubst %,-I%,$(subst :<br>
, ,$(VPATH)))”将返回“-Isrc -I../headers”，这正是cc或gcc搜索头文件路径的参数<br>
。<br>
<br>
<br>
<h2><a name="t42"></a><strong><span style="color:#ff0000">三、文件名操作函数</span></strong></h2>
<br>
下面我们要介绍的函数主要是处理文件名的。每个函数的参数字符串都会被当做一个或是<br>
一系列的文件名来对待。<br>
<br>
<br>
$(dir &lt;names...&gt; )<br>
<br>
<br>
名称：取目录函数——dir。<br>
功能：从文件名序列&lt;names&gt;中取出目录部分。目录部分是指最后一个反斜杠（“/”）之<br>
前的部分。如果没有反斜杠，那么返回“./”。<br>
返回：返回文件名序列&lt;names&gt;的目录部分。<br>
示例： $(dir src/foo.c hacks)返回值是“src/ ./”。<br>
<br>
<br>
$(notdir &lt;names...&gt; )<br>
<br>
<br>
名称：取文件函数——notdir。<br>
功能：从文件名序列&lt;names&gt;中取出非目录部分。非目录部分是指最后一个反斜杠（“/”<br>
）之后的部分。<br>
返回：返回文件名序列&lt;names&gt;的非目录部分。<br>
示例： $(notdir src/foo.c hacks)返回值是“foo.c hacks”。<br>
<br>
<br>
$(suffix &lt;names...&gt; )<br>
<br>
<br>
名称：取后缀函数——suffix。<br>
功能：从文件名序列&lt;names&gt;中取出各个文件名的后缀。<br>
返回：返回文件名序列&lt;names&gt;的后缀序列，如果文件没有后缀，则返回空字串。<br>
示例：$(suffix src/foo.c src-1.0/bar.c hacks)返回值是“.c .c”。<br>
<br>
<br>
$(basename &lt;names...&gt; )<br>
<br>
<br>
名称：取前缀函数——basename。<br>
功能：从文件名序列&lt;names&gt;中取出各个文件名的前缀部分。<br>
返回：返回文件名序列&lt;names&gt;的前缀序列，如果文件没有前缀，则返回空字串。<br>
示例：$(basename src/foo.c src-1.0/bar.c hacks)返回值是“src/foo src-1.0/bar h<br>
acks”。<br>
<br>
<br>
$(addsuffix &lt;suffix&gt;,&lt;names...&gt; )<br>
<br>
<br>
名称：加后缀函数——addsuffix。<br>
功能：把后缀&lt;suffix&gt;加到&lt;names&gt;中的每个单词后面。<br>
返回：返回加过后缀的文件名序列。<br>
示例：$(addsuffix .c,foo bar)返回值是“foo.c bar.c”。<br>
<br>
$(addprefix &lt;prefix&gt;,&lt;names...&gt; )<br>
<br>
<br>
名称：加前缀函数——addprefix。<br>
功能：把前缀&lt;prefix&gt;加到&lt;names&gt;中的每个单词后面。<br>
返回：返回加过前缀的文件名序列。<br>
示例：$(addprefix src/,foo bar)返回值是“src/foo src/bar”。<br>
<br>
<br>
$(join &lt;list1&gt;,&lt;list2&gt; )<br>
<br>
<br>
名称：连接函数——join。<br>
功能：把&lt;list2&gt;中的单词对应地加到&lt;list1&gt;的单词后面。如果&lt;list1&gt;的单词个数要比&lt;<br>
list2&gt;的多，那么，&lt;list1&gt;中的多出来的单词将保持原样。如果&lt;list2&gt;的单词个数要比<br>
&lt;list1&gt;多，那么，&lt;list2&gt;多出来的单词将被复制到&lt;list2&gt;中。<br>
返回：返回连接过后的字符串。<br>
示例：$(join aaa bbb , 111 222 333)返回值是“aaa111 bbb222 333”。<br>
<br>
<br>
<h2><a name="t43"></a><strong><span style="color:#ff0000">四、foreach 函数</span></strong></h2>
<br>
<br>
foreach 函数和别的函数非常的不一样。因为这个函数是用来做循环用的，Makefile中的<br>
foreach函数几乎是仿照于Unix标准Shell（/bin /sh）中的for语句，或是C-Shell（/bin<br>
/csh）中的foreach语句而构建的。它的语法是：<br>
<br>
$(foreach &lt;var&gt;,&lt;list&gt;,&lt;text&gt; )<br>
<br>
<br>
这个函数的意思是，把参数&lt;list&gt;中的单词逐一取出放到参数&lt;var&gt;所指定的变量中，然后再执行&lt;text&gt;所包含的表达式。每一次&lt;text&gt;会返回一个字符串，循环过程中，&lt;text&gt;的所返回的每个字符串会以空格分隔，最后当整个循环结束时，&lt;text&gt;所返回的每个字符串所组成的整个字符串（以空格分隔）将会是foreach函数的返回值。<br>
<br>
所以，&lt;var&gt;最好是一个变量名，&lt;list&gt;可以是一个表达式，而&lt;text&gt;中一般会使用&lt;var&gt;<br>
这个参数来依次枚举&lt;list&gt;中的单词。举个例子：<br>
<br>
<br>
names := a b c d<br>
<br>
<br>
files := $(foreach n,$(names),$(n).o)<br>
<br>
上面的例子中，$(name)中的单词会被挨个取出，并存到变量“n”中，“$(n).o”每次根据“$(n)”计算出一个值，这些值以空格分隔，最后作为foreach函数的返回，所以，$(f<br>
iles)的值是“a.o b.o c.o d.o”。<br>
<br>
<br>
注意，foreach中的&lt;var&gt;参数是一个临时的局部变量，foreach函数执行完后，参数&lt;var&gt;的变量将不在作用，其作用域只在foreach函数当中。<br>
<br>
<br>
<br>
<h2><a name="t44"></a><span style="color:#ff0000"><strong>五、if 函数</strong></span></h2>
<br>
<br>
if函数很像GNU的make所支持的条件语句——ifeq（参见前面所述的章节），if函数的语法是：<br>
<br>
<br>
$(if &lt;condition&gt;,&lt;then-part&gt; )<br>
<br>
<br>
<br>
或是<br>
<br>
<br>
$(if &lt;condition&gt;,&lt;then-part&gt;,&lt;else-part&gt; )<br>
<br>
<br>
<br>
可见，if函数可以包含“else”部分，或是不含。即if函数的参数可以是两个，也可以是三个。&lt;condition&gt;参数是if的表达式，如果其返回的为非空字符串，那么这个表达式就相当于返回真，于是，&lt;then-part&gt;会被计算，否则&lt;else-part&gt; 会被计算。<br>
<br>
而if函数的返回值是，如果&lt;condition&gt;为真（非空字符串），那个&lt;then- part&gt;会是整个函数的返回值，如果&lt;condition&gt;为假（空字符串），那么&lt;else-part&gt;会是整个函数的返回值，此时如果&lt;else-part&gt;没有被定义，那么，整个函数返回空字串。<br>
<br>
所以，&lt;then-part&gt;和&lt;else-part&gt;只会有一个被计算。<br>
<br>
<br>
<br>
<h2><a name="t45"></a><strong><span style="color:#ff0000">六、call函数</span></strong></h2>
<br>
call函数是唯一一个可以用来创建新的参数化的函数。你可以写一个非常复杂的表达式，这个表达式中，你可以定义许多参数，然后你可以用call函数来向这个表达式传递参数。其语法是：<br>
<br>
<br>
$(call &lt;expression&gt;,&lt;parm1&gt;,&lt;parm2&gt;,&lt;parm3&gt;...)<br>
<br>
<br>
当 make执行这个函数时，&lt;expression&gt;参数中的变量，如$(1)，$(2)，$(3)等，会被参数&lt;parm1&gt;，&lt;parm2&gt;，&lt;parm3&gt;依次取代。而&lt;expression&gt;的返回值就是 call函数的返回值。例如：<br>
<br>
reverse = $(1) $(2)<br>
<br>
foo = $(call reverse,a,b)<br>
<br>
<br>
<br>
那么，foo的值就是“a b”。当然，参数的次序是可以自定义的，不一定是顺序的，如：<br>
<br>
reverse = $(2) $(1)<br>
foo = $(call reverse,a,b)<br>
<br>
此时的foo的值就是“b a”。<br>
<br>
<h2><a name="t46"></a><strong><span style="font-size:14px; color:#ff0000">七、origin函数</span></strong></h2>
origin函数不像其它的函数，他并不操作变量的值，他只是告诉你你的这个变量是哪里来的？其语法是：<br>
<br>
$(origin &lt;variable&gt; )<br>
<br>
<br>
注意，&lt;variable&gt;是变量的名字，不应该是引用。所以你最好不要在&lt;variable&gt;中使用“$”字符。Origin函数会以其返回值来告诉你这个变量的“出生情况”，下面，是origin函<br>
数的返回值:<br>
<br>
“undefined”<br>
<br>
<br>
如果&lt;variable&gt;从来没有定义过，origin函数返回这个值“undefined”。<br>
<br>
“default”<br>
<br>
<br>
如果&lt;variable&gt;是一个默认的定义，比如“CC”这个变量，这种变量我们将在后面讲述。<br>
<br>
“environment”<br>
<br>
<br>
如果&lt;variable&gt;是一个环境变量，并且当Makefile被执行时，“-e”参数没有被打开。<br>
<br>
<br>
“file”<br>
<br>
<br>
如果&lt;variable&gt;这个变量被定义在Makefile中。<br>
<br>
<br>
“command line”<br>
<br>
<br>
如果&lt;variable&gt;这个变量是被命令行定义的。<br>
<br>
“override”<br>
<br>
<br>
如果&lt;variable&gt;是被override指示符重新定义的。<br>
<br>
“automatic”<br>
<br>
<br>
如果&lt;variable&gt;是一个命令运行中的自动化变量。关于自动化变量将在后面讲述。<br>
<br>
<br>
这些信息对于我们编写Makefile是非常有用的，例如，假设我们有一个Makefile其包了一个定义文件Make.def，在Make.def中定义了一个变量“bletch”，而我们的环境中也有一<br>
个环境变量“bletch”，此时，我们想判断一下，如果变量来源于环境，那么我们就把之重定义了，如果来源于Make.def或是命令行等非环境的，那么我们就不重新定义它。于是<br>
，在我们的Makefile中，我们可以这样写：<br>
<br>
<br>
ifdef bletch<br>
<br>
<br>
ifeq "$(origin bletch)" "environment"<br>
<br>
<br>
bletch = barf, gag, etc.<br>
<br>
endif<br>
<br>
endif<br>
<br>
当然，你也许会说，使用override关键字不就可以重新定义环境中的变量了吗？为什么需要使用这样的步骤？是的，我们用override是可以达到这样的效果，可是override过于粗<br>
暴，它同时会把从命令行定义的变量也覆盖了，而我们只想重新定义环境传来的，而不想重新定义命令行传来的。<br>
<br>
<br>
<h2><a name="t47"></a><strong><span style="font-size:14px; color:#ff0000">八、shell函数</span></strong></h2>
<br>
shell 函数也不像其它的函数。顾名思义，它的参数应该就是操作系统Shell的命令。它和反引号“`”是相同的功能。这就是说，shell函数把执行操作系统命令后的输出作为函数<br>
返回。于是，我们可以用操作系统命令以及字符串处理命令awk，sed等等命令来生成一个变量，如：<br>
<br>
<br>
contents := $(shell cat foo)<br>
<br>
<br>
<br>
files := $(shell echo *.c)<br>
<br>
<br>
注意，这个函数会新生成一个Shell程序来执行命令，所以你要注意其运行性能，如果你的Makefile中有一些比较复杂的规则，并大量使用了这个函数，那么对于你的系统性能是有害的。特别是Makefile的隐晦的规则可能会让你的shell函数执行的次数比你想像的多得多。<br>
<br>
<br>
<h2><a name="t48"></a><span style="font-size:14px; color:#ff0000"><strong>九、控制make的函数</strong></span></h2>
<br>
<br>
<br>
make提供了一些函数来控制make的运行。通常，你需要检测一些运行Makefile时的运行时信息，并且根据这些信息来决定，你是让make继续执行，还是停止。<br>
<br>
<br>
$(error &lt;text ...&gt; )<br>
<br>
产生一个致命的错误，&lt;text ...&gt;是错误信息。注意，error函数不会在一被使用就会产生错误信息，所以如果你把其定义在某个变量中，并在后续的脚本中使用这个变量，那么也<br>
是可以的。例如：<br>
<br>
示例一：<br>
<br>
<br>
ifdef ERROR_001<br>
<br>
<br>
$(error error is $(ERROR_001))<br>
<br>
endif<br>
<br>
<br>
示例二：<br>
<br>
<br>
ERR = $(error found an error!)<br>
<br>
<br>
.PHONY: err<br>
<br>
<br>
err: ; $(ERR)<br>
<br>
<br>
示例一会在变量ERROR_001定义了后执行时产生error调用，而示例二则在目录err被执行时才发生error调用。<br>
<br>
$(warning &lt;text ...&gt; )<br>
<br>
<br>
这个函数很像error函数，只是它并不会让make退出，只是输出一段警告信息，而make继续执行。
<p><span style="font-size:24px; color:rgb(255,0,0)"><strong><br>
</strong></span></p>
<h1><a name="t49"></a><span style="font-size:24px; color:rgb(255,0,0)"><strong>make 的运行</strong></span></h1>
——————<br>
<br>
一般来说，最简单的就是直接在命令行下输入make命令，make命令会找当前目录的makefile来执行，一切都是自动的。但也有时你也许只想让 make重编译某些文件，而不是整个工程，而又有的时候你有几套编译规则，你想在不同的时候使用不同的编译规则，等等。本章节就是讲述如何使用make命令的。<br>
<br>
<br>
<h2><a name="t50"></a><span style="color:#ff6666">一、make的退出码</span></h2>
<br>
<br>
make命令执行后有三个退出码：<br>
<br>
<br>
<p></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>0 —— 表示成功执行。</p>
<p>1 —— 如果make运行时出现任何错误，其返回1。</p>
<p>2 —— 如果你使用了make的“-q”选项，并且make使得一些目标不需要更新，那么返回2。</p>
</blockquote>
<p><br>
<br>
Make的相关参数我们会在后续章节中讲述。<br>
<br>
<br>
<br>
<br>
</p>
<h2><a name="t51"></a><strong><span style="color:#ff6666">二、指定Makefile</span></strong></h2>
<br>
<br>
前面我们说过，GNU make找寻默认的Makefile的规则是在当前目录下依次找三个文件——“GNUmakefile”、“makefile”和“Makefile”。其按顺序找这三个文件，一旦找到，就<br>
开始读取这个文件并执行。<br>
<br>
<br>
当前，我们也可以给make命令指定一个特殊名字的Makefile。要达到这个功能，我们要使用make的“-f”或是“--file”参数（“-- makefile”参数也行）。例如，我们有个mak<br>
efile的名字是“hchen.mk”，那么，我们可以这样来让make来执行这个文件：<br>
<br>
make –f hchen.mk<br>
<br>
<br>
如果在make的命令行是，你不只一次地使用了“-f”参数，那么，所有指定的makefile将会被连在一起传递给make执行。<br>
<br>
<br>
<h2><a name="t52"></a><span style="color:#ff6666"><strong>三、指定目标</strong></span></h2>
<br>
<br>
一般来说，make的最终目标是makefile中的第一个目标，而其它目标一般是由这个目标连带出来的。这是make的默认行为。当然，一般来说，你的 makefile中的第一个目标是由许多个目标组成，你可以指示make，让其完成你所指定的目标。要达到这一目的很简单，需在make命令后直接跟目标的名字就可以完成（如前面提到的“make clean”形式）任何在makefile中的目标都可以被指定成终极目标，但是除了以“- ”打头，或是包含了“=”的目标，因为有这些字符的目标，会被解析成命令行参数或是变量。甚至没有被我们明确写出来的目标也可以成为make的终极目标，也就是说，只要make可以找到其隐含规则推导规则，那么这个隐含目标同样可以被指定成终极目标。<br>
<br>
有一个make的环境变量叫“MAKECMDGOALS”，这个变量中会存放你所指定的终极目标的列表，如果在命令行上，你没有指定目标，那么，这个变量是空值。这个变量可以让你使用在一些比较特殊的情形下。比如下面的例子：<br>
<br>
<br>
sources = foo.c bar.c<br>
ifneq ( $(MAKECMDGOALS),clean)<br>
include $(sources:.c=.d)<br>
endif<br>
<br>
<br>
基于上面的这个例子，只要我们输入的命令不是“make clean”，那么makefile会自动包含“foo.d”和“bar.d”这两个makefile。<br>
<br>
使用指定终极目标的方法可以很方便地让我们编译我们的程序，例如下面这个例子：<br>
<br>
<br>
.PHONY: all<br>
all: prog1 prog2 prog3 prog4<br>
<br>
<br>
从这个例子中，我们可以看到，这个makefile中有四个需要编译的程序——“prog1”， “prog2”， “prog3”和 “prog4”，我们可以使用“make all”命令来编译所有的目标<br>
（如果把all置成第一个目标，那么只需执行“make”），我们也可以使用“make prog2”来单独编译目标“prog2”。<br>
<br>
<br>
即然make可以指定所有makefile中的目标，那么也包括“伪目标”，于是我们可以根据这种性质来让我们的makefile根据指定的不同的目标来完成不同的事。在Unix世界中，软件<br>
发布时，特别是GNU这种开源软件的发布时，其 makefile都包含了编译、安装、打包等功能。我们可以参照这种规则来书写我们的makefile中的目标。<br>
<br>
<br>
<p></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p><span style="color:#3366ff"><strong>“all” </strong>             这个伪目标是所有目标的目标，其功能一般是编译所有的目标。</span></p>
<p><span style="color:#3366ff"><strong>“clean”       </strong>这个伪目标功能是删除所有被make创建的文件。</span></p>
<p><span style="color:#3366ff"><strong>“install”       </strong>这个伪目标功能是安装已编译好的程序，其实就是把目标执行文件拷贝到指定的目标中去。</span></p>
<p><span style="color:#3366ff"><strong>“print”         </strong>这个伪目标的功能是例出改变过的源文件。</span></p>
<p><span style="color:#3366ff"><strong>“tar”            </strong> 这个伪目标功能是把源程序打包备份。也就是一个tar文件。</span></p>
<p><span style="color:#3366ff"><strong>“dist” </strong>          这个伪目标功能是创建一个压缩文件，一般是把tar文件压成Z文件。或是gz文件。</span></p>
<p><span style="color:#3366ff"><strong>“TAGS” </strong>       这个伪目标功能是更新所有的目标，以备完整地重编译使用。</span></p>
<p><span style="color:#3366ff"><strong>“check”和“test”    </strong>这两个伪目标一般用来测试makefile的流程。</span></p>
</blockquote>
<p><br>
<br>
       当然一个项目的makefile中也不一定要书写这样的目标，这些东西都是GNU的东西，但是我想，GNU搞出这些东西一定有其可取之处（等你的UNIX下的程序文件一多时你就会发现这些功能很有用了），这里只不过是说明了，如果你要书写这种功能，最好使用这种名字命名你的目标，这样规范一些，规范的好处就是——不用解释，大家都明白。而且如果你的makefile中有这些功能，一是很实用，二是可以显得你的makefile很专业（不是那种初学者的作品）。<br>
<br>
<br>
</p>
<h2><a name="t53"></a><span style="color:#ff0000"><strong><span style="font-size:14px">四、检查规则</span></strong></span></h2>
<br>
<br>
有时候，我们不想让我们的makefile中的规则执行起来，我们只想检查一下我们的命令，或是执行的序列。于是我们可以使用make命令的下述参数：<br>
<br>
<br>
“-n”<br>
“--just-print”<br>
“--dry-run”<br>
“--recon”<br>
不执行参数，这些参数只是打印命令，不管目标是否更新，把规则和连带规则下的命令打印出来，但不执行，这些参数对于我们调试makefile很有用处。<br>
<br>
<br>
“-t”<br>
“--touch”<br>
这个参数的意思就是把目标文件的时间更新，但不更改目标文件。也就是说，make假装编译目标，但不是真正的编译目标，只是把目标变成已编译过的状态。<br>
<br>
<br>
“-q”<br>
“--question”<br>
这个参数的行为是找目标的意思，也就是说，如果目标存在，那么其什么也不会输出，当然也不会执行编译，如果目标不存在，其会打印出一条出错信息。<br>
<br>
<br>
“-W &lt;file&gt;”<br>
“--what-if=&lt;file&gt;”<br>
“--assume-new=&lt;file&gt;”<br>
“--new-file=&lt;file&gt;”<br>
这个参数需要指定一个文件。一般是是源文件（或依赖文件），Make会根据规则推导来运行依赖于这个文件的命令，一般来说，可以和“-n”参数一同使用，来查看这个依赖文件<br>
所发生的规则命令。<br>
<br>
另外一个很有意思的用法是结合“-p”和“-v”来输出makefile被执行时的信息（这个将在后面讲述）。<br>
<br>
<br>
<br>
<h2><a name="t54"></a><span style="color:#ff0000"><strong><span style="font-size:14px">五、make的参数</span></strong></span></h2>
<br>
<br>
下面列举了所有GNU make 3.80版的参数定义。其它版本和产商的make大同小异，不过其它产商的make的具体参数还是请参考各自的产品文档。<br>
<br>
<br>
“-b”<br>
“-m”<br>
这两个参数的作用是忽略和其它版本make的兼容性。<br>
<br>
<br>
“-B”<br>
“--always-make”<br>
认为所有的目标都需要更新（重编译）。<br>
<br>
<br>
“-C &lt;dir&gt;”<br>
“--directory=&lt;dir&gt;”<br>
指定读取makefile的目录。如果有多个“-C”参数，make的解释是后面的路径以前面的作为相对路径，并以最后的目录作为被指定目录。如：“make –C ~hchen/test –C prog”<br>
等价于“make –C ~hchen/test/prog”。<br>
<br>
<br>
“—debug[=&lt;options&gt;]”<br>
输出make的调试信息。它有几种不同的级别可供选择，如果没有参数，那就是输出最简单的调试信息。下面是&lt;options&gt;的取值：<br>
<p></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>a —— 也就是all，输出所有的调试信息。（会非常的多）</p>
<p>b —— 也就是basic，只输出简单的调试信息。即输出不需要重编译的目标。</p>
<p>v —— 也就是verbose，在b选项的级别之上。输出的信息包括哪个makefile被解析，不需要被重编译的依赖文件（或是依赖目标）等。</p>
<p>i —— 也就是implicit，输出所以的隐含规则。</p>
<p>j —— 也就是jobs，输出执行规则中命令的详细信息，如命令的PID、返回码等。</p>
<p>m —— 也就是makefile，输出make读取makefile，更新makefile，执行makefile的信息。</p>
</blockquote>
<p><br>
<br>
“-d”<br>
相当于“--debug=a”。<br>
<br>
<br>
“-e”<br>
“--environment-overrides”<br>
指明环境变量的值覆盖makefile中定义的变量的值。<br>
<br>
<br>
“-f=&lt;file&gt;”<br>
“--file=&lt;file&gt;”<br>
“--makefile=&lt;file&gt;”<br>
指定需要执行的makefile。<br>
<br>
<br>
“-h”<br>
“--help”<br>
显示帮助信息。<br>
<br>
<br>
“-i”<br>
“--ignore-errors”<br>
在执行时忽略所有的错误。<br>
<br>
<br>
“-I &lt;dir&gt;”<br>
“--include-dir=&lt;dir&gt;”<br>
指定一个被包含makefile的搜索目标。可以使用多个“-I”参数来指定多个目录。<br>
<br>
<br>
“-j [&lt;jobsnum&gt;]”<br>
“--jobs[=&lt;jobsnum&gt;]”<br>
指同时运行命令的个数。如果没有这个参数，make运行命令时能运行多少就运行多少。如果有一个以上的“-j”参数，那么仅最后一个“-j”才是有效的。（注意这个参数在MS-D<br>
OS中是无用的）<br>
<br>
<br>
“-k”<br>
“--keep-going”<br>
出错也不停止运行。如果生成一个目标失败了，那么依赖于其上的目标就不会被执行了。<br>
<br>
<br>
<br>
<br>
“-l &lt;load&gt;”<br>
“--load-average[=&lt;load]”<br>
“—max-load[=&lt;load&gt;]”<br>
指定make运行命令的负载。<br>
<br>
<br>
“-n”<br>
“--just-print”<br>
“--dry-run”<br>
“--recon”<br>
仅输出执行过程中的命令序列，但并不执行。<br>
<br>
<br>
“-o &lt;file&gt;”<br>
“--old-file=&lt;file&gt;”<br>
“--assume-old=&lt;file&gt;”<br>
不重新生成的指定的&lt;file&gt;，即使这个目标的依赖文件新于它。<br>
<br>
<br>
“-p”<br>
“--print-data-base”<br>
输出makefile中的所有数据，包括所有的规则和变量。这个参数会让一个简单的makefile都会输出一堆信息。如果你只是想输出信息而不想执行 makefile，你可以使用“make -q<br>
p”命令。如果你想查看执行makefile前的预设变量和规则，你可以使用“make –p –f /dev/null”。这个参数输出的信息会包含着你的makefile文件的文件名和行号，所以，用<br>
这个参数来调试你的makefile会是很有用的，特别是当你的环境变量很复杂的时候。<br>
<br>
“-q”<br>
“--question”<br>
不运行命令，也不输出。仅仅是检查所指定的目标是否需要更新。如果是0则说明要更新，如果是2则说明有错误发生。<br>
<br>
<br>
“-r”<br>
“--no-builtin-rules”<br>
禁止make使用任何隐含规则。<br>
<br>
<br>
“-R”<br>
“--no-builtin-variabes”<br>
禁止make使用任何作用于变量上的隐含规则。<br>
<br>
<br>
“-s”<br>
“--silent”<br>
“--quiet”<br>
在命令运行时不输出命令的输出。<br>
<br>
<br>
“-S”<br>
“--no-keep-going”<br>
“--stop”<br>
取消“-k”选项的作用。因为有些时候，make的选项是从环境变量“MAKEFLAGS”中继承下来的。所以你可以在命令行中使用这个参数来让环境变量中的“-k”选项失效。<br>
<br>
<br>
“-t”<br>
“--touch”<br>
相当于UNIX的touch命令，只是把目标的修改日期变成最新的，也就是阻止生成目标的命令运行。<br>
<br>
<br>
“-v”<br>
“--version”<br>
输出make程序的版本、版权等关于make的信息。<br>
<br>
<br>
“-w”<br>
“--print-directory”<br>
输出运行makefile之前和之后的信息。这个参数对于跟踪嵌套式调用make时很有用。<br>
<br>
<br>
“--no-print-directory”<br>
禁止“-w”选项。<br>
<br>
<br>
“-W &lt;file&gt;”<br>
“--what-if=&lt;file&gt;”<br>
“--new-file=&lt;file&gt;”<br>
“--assume-file=&lt;file&gt;”<br>
假定目标&lt;file&gt;需要更新，如果和“-n”选项使用，那么这个参数会输出该目标更新时的运行动作。如果没有“-n”那么就像运行UNIX的“touch”命令一样，使得&lt;file&gt;的修改时<br>
间为当前时间。<br>
<br>
<br>
“--warn-undefined-variables”<br>
只要make发现有未定义的变量，那么就输出警告信息。<br>
<br>
<br>
</p>
<h1><a name="t55"></a><span style="color:#ff0000"><strong><span style="font-size:24px">隐含规则</span></strong></span></h1>
<span style="color:#ff0000"><strong><span style="font-size:14px">————</span></strong></span><br>
<br>
<br>
在我们使用Makefile时，有一些我们会经常使用，而且使用频率非常高的东西，比如，我们编译C/C++的源程序为中间目标文件（Unix下是[.o] 文件，Windows下是[.obj]文件）。本章讲述的就是一些在Makefile中的“隐含的”，早先约定了的，不需要我们再写出来的规则。<br>
<br>
<br>
“隐含规则”也就是一种惯例，make会按照这种“惯例”心照不喧地来运行，那怕我们的Makefile中没有书写这样的规则。例如，把[.c]文件编译成[.o]文件这一规则，你根本就<br>
不用写出来，make会自动推导出这种规则，并生成我们需要的[.o]文件。<br>
<br>
“隐含规则”会使用一些我们系统变量，我们可以改变这些系统变量的值来定制隐含规则的运行时的参数。如系统变量“CFLAGS”可以控制编译时的编译器参数。<br>
<br>
<br>
我们还可以通过“模式规则”的方式写下自己的隐含规则。用“后缀规则”来定义隐含规则会有许多的限制。使用“模式规则”会更回得智能和清楚，但“后缀规则”可以用来保<br>
证我们Makefile的兼容性。<br>
我们了解了“隐含规则”，可以让其为我们更好的服务，也会让我们知道一些“约定俗成”了的东西，而不至于使得我们在运行Makefile时出现一些我们觉得莫名其妙的东西。当<br>
然，任何事物都是矛盾的，水能载舟，亦可覆舟，所以，有时候“隐含规则”也会给我们造成不小的麻烦。只有了解了它，我们才能更好地使用它。<br>
<br>
<span style="font-size:14px"><br>
</span>
<h2><a name="t56"></a><span style="font-size:14px"><span style="color:#ff0000"><strong>一、使用隐含规则</strong></span></span></h2>
<br>
<br>
如果要使用隐含规则生成你需要的目标，你所需要做的就是不要写出这个目标的规则。那么，make会试图去自动推导产生这个目标的规则和命令，如果make可以自动推导生成这个目标的规则和命令，那么这个行为就是隐含规则的自动推导。当然，隐含规则是make事先约定好的一些东西。例如，我们有下面的一个Makefile：<br>
<br>
<br>
foo : foo.o bar.o<br>
cc –o foo foo.o bar.o $(CFLAGS) $(LDFLAGS)<br>
<br>
<br>
我们可以注意到，这个Makefile中并没有写下如何生成foo.o和bar.o这两目标的规则和命令。因为make的“隐含规则”功能会自动为我们自动去推导这两个目标的依赖目标和生成<br>
命令。<br>
<br>
make 会在自己的“隐含规则”库中寻找可以用的规则，如果找到，那么就会使用。如果找不到，那么就会报错。在上面的那个例子中，make调用的隐含规则是，把 [.o]的目标的依赖文件置成[.c]，并使用C的编译命令“cc –c $(CFLAGS) [.c]”来生成[.o]的目标。也就是说，我们完全没有必要写下下面的两条规则：<br>
<br>
<br>
foo.o : foo.c<br>
cc –c foo.c $(CFLAGS)<br>
bar.o : bar.c<br>
cc –c bar.c $(CFLAGS)<br>
<br>
<br>
因为，这已经是“约定”好了的事了，make和我们约定好了用C编译器“cc”生成[.o]文件的规则，这就是隐含规则。<br>
<br>
<br>
当然，如果我们为[.o]文件书写了自己的规则，那么make就不会自动推导并调用隐含规则，它会按照我们写好的规则忠实地执行。<br>
<br>
<br>
还有，在make的“隐含规则库”中，每一条隐含规则都在库中有其顺序，越靠前的则是越被经常使用的，所以，这会导致我们有些时候即使我们显示地指定了目标依赖，make也不会管。如下面这条规则（没有命令）：<br>
<br>
<br>
foo.o : foo.p<br>
<br>
<br>
依赖文件“foo.p”（Pascal程序的源文件）有可能变得没有意义。如果目录下存在了“foo.c”文件，那么我们的隐含规则一样会生效，并会通过 “foo.c”调用C的编译器生成f<br>
oo.o文件。因为，在隐含规则中，Pascal的规则出现在C的规则之后，所以，make找到可以生成foo.o的 C的规则就不再寻找下一条规则了。如果你确实不希望任何隐含规则推导，那么，你就不要只写出“依赖规则”，而不写命令。<br>
<br>
<br>
<h2><a name="t57"></a><span style="font-size:14px; color:#ff0000"><strong>二、隐含规则一览</strong></span></h2>
<br>
<br>
这里我们将讲述所有预先设置（也就是make内建）的隐含规则，如果我们不明确地写下规则，那么，make就会在这些规则中寻找所需要规则和命令。当然，我们也可以使用make的参数“-r”或“--no-builtin-rules”选项来取消所有的预设置的隐含规则。<br>
<br>
<br>
当然，即使是我们指定了“-r”参数，某些隐含规则还是会生效，因为有许多的隐含规则都是使用了“后缀规则”来定义的，所以，只要隐含规则中有“后缀列表 ”（也就一系统<br>
定义在目标.SUFFIXES的依赖目标），那么隐含规则就会生效。默认的后缀列表是：.out,.a, .ln, .o, .c, .cc, .C, .p, .f, .F, .r, .y, .l, .s, .S, .mod, .sym, .def, .<br>
h, .info, .dvi, .tex, .texinfo, .texi, .txinfo, .w, .ch .web, .sh, .elc, .el。具体的细节，我们会在后面讲述。<br>
<br>
<br>
还是先来看一看常用的隐含规则吧。<br>
<br>
<br>
1、编译C程序的隐含规则。<br>
“&lt;n&gt;.o”的目标的依赖目标会自动推导为“&lt;n&gt;.c”，并且其生成命令是“$(CC) –c $(CPPFLAGS) $(CFLAGS)”<br>
<br>
<br>
2、编译C++程序的隐含规则。<br>
“&lt;n&gt;.o” 的目标的依赖目标会自动推导为“&lt;n&gt;.cc”或是“&lt;n&gt;.C”，并且其生成命令是“$(CXX) –c $(CPPFLAGS) $(CFLAGS)”。（建议使用“.cc”作为C++源文件的后缀，而<br>
不是“.C”）<br>
<br>
<br>
3、编译Pascal程序的隐含规则。<br>
“&lt;n&gt;.o”的目标的依赖目标会自动推导为“&lt;n&gt;.p”，并且其生成命令是“$(PC) –c $(PFLAGS)”。<br>
<br>
<br>
4、编译Fortran/Ratfor程序的隐含规则。<br>
“&lt;n&gt;.o”的目标的依赖目标会自动推导为“&lt;n&gt;.r”或“&lt;n&gt;.F”或“&lt;n&gt;.f”，并且其生成命令是:<br>
“.f” “$(FC) –c $(FFLAGS)”<br>
“.F” “$(FC) –c $(FFLAGS) $(CPPFLAGS)”<br>
“.f” “$(FC) –c $(FFLAGS) $(RFLAGS)”<br>
<br>
<br>
5、预处理Fortran/Ratfor程序的隐含规则。<br>
“&lt;n&gt;.f”的目标的依赖目标会自动推导为“&lt;n&gt;.r”或“&lt;n&gt;.F”。这个规则只是转换Ratfor或有预处理的Fortran程序到一个标准的Fortran程序。其使用的命令是：<br>
“.F” “$(FC) –F $(CPPFLAGS) $(FFLAGS)”<br>
“.r” “$(FC) –F $(FFLAGS) $(RFLAGS)”<br>
<br>
<br>
6、编译Modula-2程序的隐含规则。<br>
“&lt;n&gt;.sym” 的目标的依赖目标会自动推导为“&lt;n&gt;.def”，并且其生成命令是：“$(M2C) $(M2FLAGS) $(DEFFLAGS)”。“&lt;n.o&gt;” 的目标的依赖目标会自动推导为“&lt;n&gt;.mod”，<br>
并且其生成命令是：“$(M2C) $(M2FLAGS) $(MODFLAGS)”。<br>
<br>
<br>
7、汇编和汇编预处理的隐含规则。<br>
“&lt;n&gt;.o” 的目标的依赖目标会自动推导为“&lt;n&gt;.s”，默认使用编译品“as”，并且其生成命令是：“$(AS) $(ASFLAGS)”。“&lt;n&gt;.s” 的目标的依赖目标会自动推导为“&lt;n&gt;.S”<br>
，默认使用C预编译器“cpp”，并且其生成命令是：“$(AS) $(ASFLAGS)”。<br>
<br>
<br>
8、链接Object文件的隐含规则。<br>
“&lt;n&gt;” 目标依赖于“&lt;n&gt;.o”，通过运行C的编译器来运行链接程序生成（一般是“ld”），其生成命令是：“$(CC) $(LDFLAGS) &lt;n&gt;.o $(LOADLIBES) $(LDLIBS)”。这个规则对<br>
于只有一个源文件的工程有效，同时也对多个Object文件（由不同的源文件生成）的也有效。例如如下规则：<br>
<br>
x : y.o z.o<br>
<br>
<br>
并且“x.c”、“y.c”和“z.c”都存在时，隐含规则将执行如下命令：<br>
<br>
<br>
cc -c x.c -o x.o<br>
cc -c y.c -o y.o<br>
cc -c z.c -o z.o<br>
cc x.o y.o z.o -o x<br>
rm -f x.o<br>
rm -f y.o<br>
rm -f z.o<br>
<br>
<br>
如果没有一个源文件（如上例中的x.c）和你的目标名字（如上例中的x）相关联，那么，你最好写出自己的生成规则，不然，隐含规则会报错的。<br>
<br>
<br>
9、Yacc C程序时的隐含规则。<br>
<br>
“&lt;n&gt;.c”的依赖文件被自动推导为“n.y”（Yacc生成的文件），其生成命令是：“$(YACC) $(YFALGS)”。（“Yacc”是一个语法分析器，关于其细节请查看相关资料）<br>
<br>
<br>
10、Lex C程序时的隐含规则。<br>
“&lt;n&gt;.c”的依赖文件被自动推导为“n.l”（Lex生成的文件），其生成命令是：“$(LEX) $(LFALGS)”。（关于“Lex”的细节请查看相关资料）<br>
<br>
<br>
11、Lex Ratfor程序时的隐含规则。<br>
“&lt;n&gt;.r”的依赖文件被自动推导为“n.l”（Lex生成的文件），其生成命令是：“$(LEX<br>
) $(LFALGS)”。<br>
<br>
<br>
12、从C程序、Yacc文件或Lex文件创建Lint库的隐含规则。<br>
“&lt;n&gt;.ln” （lint生成的文件）的依赖文件被自动推导为“n.c”，其生成命令是：“$(LINT) $(LINTFALGS) $(CPPFLAGS) -i”。对于“&lt;n&gt;.y”和“&lt;n&gt;.l”也是同样的规则。<br>
<br>
<br>
<h2><a name="t58"></a><span style="font-size:14px; color:#ff0000">三、隐含规则使用的变量</span></h2>
<br>
<br>
在隐含规则中的命令中，基本上都是使用了一些预先设置的变量。你可以在你的makefile中改变这些变量的值，或是在make的命令行中传入这些值，或是在你的环境变量中设置这些值，无论怎么样，只要设置了这些特定的变量，那么其就会对隐含规则起作用。当然，你也可以利用make的“-R”或“--no– builtin-variables”参数来取消你所定义的变量<br>
对隐含规则的作用。<br>
<br>
例如，第一条隐含规则——编译C程序的隐含规则的命令是“$(CC) –c $(CFLAGS) $(CPPFLAGS)”。Make默认的编译命令是“cc”，如果你把变量“$(CC)”重定义成“gcc”，把<br>
变量“$(CFLAGS)”重定义成 “-g”，那么，隐含规则中的命令全部会以“gcc –c -g $(CPPFLAGS)”的样子来执行了。<br>
<br>
<br>
我们可以把隐含规则中使用的变量分成两种：一种是命令相关的，如“CC”；一种是参数<br>
相的关，如“CFLAGS”。下面是所有隐含规则中会用到的变量：<br>
<br>
<br>
<span style="color:#ff0000"><strong>1、关于命令的变量。</strong></span><br>
<br>
<br>
AR   函数库打包程序。默认命令是“ar”。<br>
AS<br>
汇编语言编译程序。默认命令是“as”。<br>
CC<br>
C语言编译程序。默认命令是“cc”。<br>
CXX<br>
C++语言编译程序。默认命令是“g++”。<br>
CO<br>
从 RCS文件中扩展文件程序。默认命令是“co”。<br>
CPP<br>
C程序的预处理器（输出是标准输出设备）。默认命令是“$(CC) –E”。<br>
FC<br>
Fortran 和 Ratfor 的编译器和预处理程序。默认命令是“f77”。<br>
GET<br>
从SCCS文件中扩展文件的程序。默认命令是“get”。<br>
LEX<br>
Lex方法分析器程序（针对于C或Ratfor）。默认命令是“lex”。<br>
PC<br>
Pascal语言编译程序。默认命令是“pc”。<br>
YACC<br>
Yacc文法分析器（针对于C程序）。默认命令是“yacc”。<br>
YACCR<br>
Yacc文法分析器（针对于Ratfor程序）。默认命令是“yacc –r”。<br>
MAKEINFO<br>
转换Texinfo源文件（.texi）到Info文件程序。默认命令是“makeinfo”。<br>
TEX<br>
从TeX源文件创建TeX DVI文件的程序。默认命令是“tex”。<br>
TEXI2DVI<br>
从Texinfo源文件创建军TeX DVI 文件的程序。默认命令是“texi2dvi”。<br>
WEAVE<br>
转换Web到TeX的程序。默认命令是“weave”。<br>
CWEAVE<br>
转换C Web 到 TeX的程序。默认命令是“cweave”。<br>
TANGLE<br>
转换Web到Pascal语言的程序。默认命令是“tangle”。<br>
CTANGLE<br>
转换C Web 到 C。默认命令是“ctangle”。<br>
RM<br>
删除文件命令。默认命令是“rm –f”。<br>
<br>
<br>
<p><strong><span style="color:#ff0000">2、关于命令参数的变量</span></strong></p>
<br>
下面的这些变量都是相关上面的命令的参数。如果没有指明其默认值，那么其默认值都是<br>
空。<br>
<br>
<br>
ARFLAGS<br>
函数库打包程序AR命令的参数。默认值是“rv”。<br>
ASFLAGS<br>
汇编语言编译器参数。（当明显地调用“.s”或“.S”文件时）。<br>
CFLAGS<br>
C语言编译器参数。<br>
CXXFLAGS<br>
C++语言编译器参数。<br>
COFLAGS<br>
RCS命令参数。<br>
CPPFLAGS<br>
C预处理器参数。（ C 和 Fortran 编译器也会用到）。<br>
FFLAGS<br>
Fortran语言编译器参数。<br>
GFLAGS<br>
SCCS “get”程序参数。<br>
LDFLAGS<br>
链接器参数。（如：“ld”）<br>
LFLAGS<br>
Lex文法分析器参数。<br>
PFLAGS<br>
Pascal语言编译器参数。<br>
RFLAGS<br>
Ratfor 程序的Fortran 编译器参数。<br>
YFLAGS<br>
Yacc文法分析器参数。<br>
<br>
<br>
<br>
<h2><a name="t59"></a><span style="color:#ff0000"><strong><span style="font-size:14px">四、隐含规则链</span></strong></span></h2>
<br>
<br>
有些时候，一个目标可能被一系列的隐含规则所作用。例如，一个[.o]的文件生成，可能会是先被Yacc的[.y]文件先成[.c]，然后再被C的编译器生成。我们把这一系列的隐含规则<br>
叫做“隐含规则链”。<br>
<br>
<br>
在上面的例子中，如果文件[.c]存在，那么就直接调用C的编译器的隐含规则，如果没有[.c]文件，但有一个[.y]文件，那么Yacc的隐含规则会被调用，生成[.c]文件，然后，再调<br>
用C编译的隐含规则最终由[.c]生成[.o]文件，达到目标。<br>
<br>
<br>
我们把这种[.c]的文件（或是目标），叫做中间目标。不管怎么样，make会努力自动推导生成目标的一切方法，不管中间目标有多少，其都会执着地把所有的隐含规则和你书写的规则全部合起来分析，努力达到目标，所以，有些时候，可能会让你觉得奇怪，怎么我的目标会这样生成？怎么我的makefile发疯了？<br>
<br>
在默认情况下，对于中间目标，它和一般的目标有两个地方所不同：第一个不同是除非中间的目标不存在，才会引发中间规则。第二个不同的是，只要目标成功产生，那么，产生最终目标过程中，所产生的中间目标文件会被以“rm -f”删除。<br>
<br>
通常，一个被makefile指定成目标或是依赖目标的文件不能被当作中介。然而，你可以明显地说明一个文件或是目标是中介目标，你可以使用伪目标“.INTERMEDIATE”来强制声明。（如：.INTERMEDIATE ： mid ）<br>
<br>
<br>
你也可以阻止make自动删除中间目标，要做到这一点，你可以使用伪目标“.SECONDARY”来强制声明（如：.SECONDARY : sec）。你还可以把你的目标，以模式的方式来指定（如：%.o）成伪目标“.PRECIOUS”的依赖目标，以保存被隐含规则所生成的中间文件。<br>
<br>
<br>
在“隐含规则链”中，禁止同一个目标出现两次或两次以上，这样一来，就可防止在make自动推导时出现无限递归的情况。<br>
<br>
Make 会优化一些特殊的隐含规则，而不生成中间文件。如，从文件“foo.c”生成目标程序“foo”，按道理，make会编译生成中间文件“foo.o”，然后链接成“foo”，但在实际情况下，这一动作可以被一条“cc”的命令完成（cc –o foo foo.c），于是优化过的规<br>
则就不会生成中间文件。<br>
<br>
<br>
<strong><br>
</strong>
<h2><a name="t60"></a><strong><span style="font-size:14px; color:#ff0000">五、定义模式规则</span></strong></h2>
<br>
<br>
你可以使用模式规则来定义一个隐含规则。一个模式规则就好像一个一般的规则，只是在规则中，目标的定义需要有"%"字符。"%"的意思是表示一个或多个任意字符。在依赖目标中同样可以使用"%"，只是依赖目标中的"%"的取值，取决于其目标。<br>
<br>
有一点需要注意的是，"%"的展开发生在变量和函数的展开之后，变量和函数的展开发生在make载入Makefile时，而模式规则中的"%"则发生在运行时。<br>
<br>
<br>
<br>
<span style="color:#ff0000"><strong>1、模式规则介绍</strong></span><br>
<br>
<br>
模式规则中，至少在规则的目标定义中要包含"%"，否则，就是一般的规则。目标中的"%"定义表示对文件名的匹配，"%"表示长度任意的非空字符串。例如："%.c"表示以".c"结尾的文件名（文件名的长度至少为3），而"s.%.c"则表示以"s."开头，".c"结尾的文件名（文件名的长度至少为 5）。<br>
<br>
如果"%"定义在目标中，那么，目标中的"%"的值决定了依赖目标中的"%"的值，也就是说，目标中的模式的"%"决定了依赖目标中"%"的样子。例如有一个模式规则如下：<br>
<br>
<br>
%.o : %.c ; &lt;command ......&gt;<br>
<br>
<br>
其含义是，指出了怎么从所有的[.c]文件生成相应的[.o]文件的规则。如果要生成的目标是"a.o b.o"，那么"%c"就是"a.c b.c"。<br>
<br>
<br>
一旦依赖目标中的"%"模式被确定，那么，make会被要求去匹配当前目录下所有的文件名，一旦找到，make就会规则下的命令，所以，在模式规则中，目标可能会是多个的，如果有模式匹配出多个目标，make就会产生所有的模式目标，此时，make关心的是依赖的文件名和生成目标的命令这两件事。<br>
<br>
<span style="color:#ff0000"><strong>2、模式规则示例</strong></span><br>
<br>
<br>
下面这个例子表示了,把所有的[.c]文件都编译成[.o]文件.<br>
<br>
<br>
%.o : %.c<br>
$(CC) -c $(CFLAGS) $(CPPFLAGS) $&lt; -o $@<br>
<br>
<br>
其中，"$@"表示所有的目标的挨个值，"$&lt;"表示了所有依赖目标的挨个值。这些奇怪的变<br>
量我们叫"自动化变量"，后面会详细讲述。<br>
<br>
<br>
下面的这个例子中有两个目标是模式的：<br>
<br>
%.tab.c %.tab.h: %.y<br>
bison -d $&lt;<br>
<br>
<br>
这条规则告诉make把所有的[.y]文件都以"bison -d &lt;n&gt;.y"执行，然后生成"&lt;n&gt;.tab.c"和"&lt;n&gt;.tab.h"文件。（其中，"&lt;n&gt;" 表示一个任意字符串）。如果我们的执行程序"foo"依<br>
赖于文件"parse.tab.o"和"scan.o"，并且文件"scan.o"依赖于文件"parse.tab.h"，如果"parse.y"文件被更新了，那么根据上述的规则，"bison -d parse.y"就会被执行一次，于<br>
是，"parse.tab.o"和"scan.o"的依赖文件就齐了。（假设，"parse.tab.o" 由"parse.tab.c"生成，和"scan.o"由"scan.c"生成，而"foo"由"parse.tab.o"和"scan.o"链接生成，<br>
而且foo和其[.o]文件的依赖关系也写好，那么，所有的目标都会得到满足）<br>
<br>
<strong><span style="color:#ff0000">3、自动化变量</span></strong><br>
<br>
在上述的模式规则中，目标和依赖文件都是一系例的文件，那么我们如何书写一个命令来完成从不同的依赖文件生成相应的目标？因为在每一次的对模式规则的解析时，都会是不同的目标和依赖文件。<br>
<br>
自动化变量就是完成这个功能的。在前面，我们已经对自动化变量有所提涉，相信你看到这里已对它有一个感性认识了。所谓自动化变量，就是这种变量会把模式中所定义的一系列的文件自动地挨个取出，直至所有的符合模式的文件都取完了。这种自动化变量只应出现在规则的命令中。<br>
<br>
下面是所有的自动化变量及其说明：<br>
<br>
$@<br>
表示规则中的目标文件集。在模式规则中，如果有多个目标，那么，"$@"就是匹配于目标中模式定义的集合。<br>
<br>
<br>
$%<br>
仅当目标是函数库文件中，表示规则中的目标成员名。例如，如果一个目标是"foo.a(bar.o)"，那么，"$%"就是"bar.o"，"$@"就是"foo.a"。如果目标不是函数库文件（Unix下是<br>
[.a]，Windows下是[.lib]），那么，其值为空。<br>
<br>
$&lt;<br>
依赖目标中的第一个目标名字。如果依赖目标是以模式（即"%"）定义的，那么"$&lt;"将是符合模式的一系列的文件集。注意，其是一个一个取出来的。<br>
<br>
$?<br>
所有比目标新的依赖目标的集合。以空格分隔。<br>
<br>
$^<br>
所有的依赖目标的集合。以空格分隔。如果在依赖目标中有多个重复的，那个这个变量会去除重复的依赖目标，只保留一份。<br>
<br>
$+<br>
这个变量很像"$^"，也是所有依赖目标的集合。只是它不去除重复的依赖目标。<br>
<br>
<br>
$*<br>
这个变量表示目标模式中"%"及其之前的部分。如果目标是"dir/a.foo.b"，并且目标的模式是"a.%.b"，那么，"$*"的值就是"dir /a.foo"。这个变量对于构造有关联的文件名是比<br>
较有较。如果目标中没有模式的定义，那么"$*"也就不能被推导出，但是，如果目标文件的后缀是 make所识别的，那么"$*"就是除了后缀的那一部分。例如：如果目标是"foo.c"<br>
，因为".c"是make所能识别的后缀名，所以，"$*"的值就是"foo"。这个特性是GNU make的，很有可能不兼容于其它版本的make，所以，你应该尽量避免使用"$*"，除非是在隐含规则或是静态模式中。如果目标中的后缀是make所不能识别的，那么"$*"就是空值。<br>
<br>
当你希望只对更新过的依赖文件进行操作时，"$?"在显式规则中很有用，例如，假设有一个函数库文件叫"lib"，其由其它几个object文件更新。那么把object文件打包的比较有效<br>
率的Makefile规则是：<br>
<br>
<br>
lib : foo.o bar.o lose.o win.o<br>
ar r lib $?<br>
<br>
<br>
在上述所列出来的自动量变量中。四个变量（$@、$&lt;、$%、$*）在扩展时只会有一个文件，而另三个的值是一个文件列表。这七个自动化变量还可以取得文件的目录名或是在当前目录下的符合模式的文件名，只需要搭配上"D"或"F"字样。这是GNU make中老版本的特性，在新版本中，我们使用函数"dir"或"notdir"就可以做到了。"D"的含义就是Directory，就是目录，"F"的含义就是File，就是文件。<br>
<br>
<br>
下面是对于上面的七个变量分别加上"D"或是"F"的含义：<br>
<br>
<br>
$(@D)<br>
表示"$@"的目录部分（不以斜杠作为结尾），如果"$@"值是"dir/foo.o"，那么"$(@D)"就是"dir"，而如果"$@"中没有包含斜杠的话，其值就是"."（当前目录）。<br>
<br>
<br>
$(@F)<br>
表示"$@"的文件部分，如果"$@"值是"dir/foo.o"，那么"$(@F)"就是"foo.o"，"$(@F)"相当于函数"$(notdir $@)"。<br>
<br>
<br>
"$(*D)"<br>
"$(*F)"<br>
和上面所述的同理，也是取文件的目录部分和文件部分。对于上面的那个例子，"$(*D)"返回"dir"，而"$(*F)"返回"foo"<br>
<br>
<br>
"$(%D)"<br>
"$(%F)"<br>
分别表示了函数包文件成员的目录部分和文件部分。这对于形同"archive(member)"形式的目标中的"member"中包含了不同的目录很有用。<br>
<br>
<br>
"$(&lt;D)"<br>
"$(&lt;F)"<br>
分别表示依赖文件的目录部分和文件部分。<br>
<br>
<br>
"$(^D)"<br>
"$(^F)"<br>
分别表示所有依赖文件的目录部分和文件部分。（无相同的）<br>
<br>
<br>
"$(+D)"<br>
"$(+F)"<br>
分别表示所有依赖文件的目录部分和文件部分。（可以有相同的）<br>
<br>
<br>
"$(?D)"<br>
"$(?F)"<br>
<br>
<br>
分别表示被更新的依赖文件的目录部分和文件部分。<br>
<br>
最后想提醒一下的是，对于"$&lt;"，为了避免产生不必要的麻烦，我们最好给$后面的那个特定字符都加上圆括号，比如，"$(&lt; )"就要比"$&lt;"要好一些。<br>
<br>
还得要注意的是，这些变量只使用在规则的命令中，而且一般都是"显式规则"和"静态模式规则"（参见前面"书写规则"一章）。其在隐含规则中并没有意义。<br>
<br>
<br>
<p></p>
<p><strong><span style="font-size:14px; color:#ff0000">4、模式的匹配</span></strong></p>
<br>
<br>
一般来说，一个目标的模式有一个有前缀或是后缀的"%"，或是没有前后缀，直接就是一个"%"。因为"%"代表一个或多个字符，所以在定义好了的模式中，我们把"%"所匹配的内容叫做"茎"，例如"%.c"所匹配的文件"test.c"中"test"就是"茎"。因为在目标和依赖目标中同时有"%"时，依赖目标的"茎"会传给目标，当做目标中的"茎"。<br>
<br>
当一个模式匹配包含有斜杠（实际也不经常包含）的文件时，那么在进行模式匹配时，目录部分会首先被移开，然后进行匹配，成功后，再把目录加回去。在进行"茎"的传递时，我们需要知道这个步骤。例如有一个模式"e%t"，文件"src/eat" 匹配于该模式，于是"src/a"就是其"茎"，如果这个模式定义在依赖目标中，而被依赖于这个模式的目标中又有个模式"c%r"，那么，目标就是"src/car"。（"茎"被传递）<br>
<br>
<strong><span style="font-size:14px; color:#ff0000">5、重载内建隐含规则</span></strong><br>
<br>
<br>
你可以重载内建的隐含规则（或是定义一个全新的），例如你可以重新构造和内建隐含规则不同的命令，如：<br>
<br>
<br>
%.o : %.c<br>
$(CC) -c $(CPPFLAGS) $(CFLAGS) -D$(date)<br>
<br>
<br>
你可以取消内建的隐含规则，只要不在后面写命令就行。如：<br>
<br>
<br>
%.o : %.s<br>
<br>
<br>
同样，你也可以重新定义一个全新的隐含规则，其在隐含规则中的位置取决于你在哪里写下这个规则。朝前的位置就靠前。<br>
<br>
<br>
<h2><a name="t61"></a><strong><span style="font-size:14px; color:#ff0000">六、老式风格的"后缀规则"</span></strong></h2>
<br>
<br>
后缀规则是一个比较老式的定义隐含规则的方法。后缀规则会被模式规则逐步地取代。因为模式规则更强更清晰。为了和老版本的Makefile兼容，GNU make同样兼容于这些东西。后缀规则有两种方式："双后缀"和"单后缀"。<br>
<br>
双后缀规则定义了一对后缀：目标文件的后缀和依赖目标（源文件）的后缀。如".c.o"相当于"%o : %c"。单后缀规则只定义一个后缀，也就是源文件的后缀。如".c"相当于"% : %.c"。<br>
<br>
<br>
后缀规则中所定义的后缀应该是make所认识的，如果一个后缀是make所认识的，那么这个规则就是单后缀规则，而如果两个连在一起的后缀都被make所认识，那就是双后缀规则。例如：".c"和".o"都是make所知道。因而，如果你定义了一个规则是".c.o"那么其就是双后缀规则，意义就是".c" 是源文件的后缀，".o"是目标文件的后缀。如下示例：<br>
<br>
<br>
.c.o:<br>
$(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $&lt;<br>
<br>
<br>
后缀规则不允许任何的依赖文件，如果有依赖文件的话，那就不是后缀规则，那些后缀统统被认为是文件名，如：<br>
<br>
<br>
.c.o: foo.h<br>
$(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $&lt;<br>
<br>
<br>
这个例子，就是说，文件".c.o"依赖于文件"foo.h"，而不是我们想要的这样：<br>
<br>
%.o: %.c foo.h<br>
$(CC) -c $(CFLAGS) $(CPPFLAGS) -o $@ $&lt;<br>
<br>
<br>
后缀规则中，如果没有命令，那是毫无意义的。因为他也不会移去内建的隐含规则。<br>
<br>
<br>
而要让make知道一些特定的后缀，我们可以使用伪目标".SUFFIXES"来定义或是删除，如：<br>
<br>
<br>
.SUFFIXES: .hack .win<br>
<br>
<br>
把后缀.hack和.win加入后缀列表中的末尾。<br>
<br>
<br>
.SUFFIXES: # 删除默认的后缀<br>
.SUFFIXES: .c .o .h # 定义自己的后缀<br>
<br>
<br>
先清楚默认后缀，后定义自己的后缀列表。<br>
<br>
<br>
make的参数"-r"或"-no-builtin-rules"也会使用得默认的后缀列表为空。而变量"SUFFIXE"被用来定义默认的后缀列表，你可以用".SUFFIXES"来改变后缀列表，但请不要改变变量"SUFFIXE"的值。<br>
<br>
<br>
<br>
<h2><a name="t62"></a><span style="font-size:14px; color:#ff0000"><strong>七、隐含规则搜索算法</strong></span></h2>
<br>
比如我们有一个目标叫 T。下面是搜索目标T的规则的算法。请注意，在下面，我们没有提到后缀规则，原因是，所有的后缀规则在Makefile被载入内存时，会被转换成模式规则。如果目标是"archive(member)"的函数库文件模式，那么这个算法会被运行两次，第一次是找目标T，如果没有找到的话，那么进入第二次，第二次会把"member"当作T来搜索。<br>
<br>
<br>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>1、把T的目录部分分离出来。叫D，而剩余部分叫N。（如：如果T是"src/foo.o"，那么，D就是"src/"，N就是"foo.o"）</p>
<p>2、创建所有匹配于T或是N的模式规则列表。</p>
<p>3、如果在模式规则列表中有匹配所有文件的模式，如"%"，那么从列表中移除其它的模式。</p>
<p>4、移除列表中没有命令的规则。</p>
<p>5、对于第一个在列表中的模式规则：</p>
<p><br>
</p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>1）推导其"茎"S，S应该是T或是N匹配于模式中"%"非空的部分。</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>2）计算依赖文件。把依赖文件中的"%"都替换成"茎"S。如果目标模式中没有包含斜框字符，而把D加在第一个依赖文件的开头。</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>3）测试是否所有的依赖文件都存在或是理当存在。（如果有一个文件被定义成另外一个规则的目标文件，或者是一个显式规则的依赖文件，那么这个文件就叫"理当存在"）</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>4）如果所有的依赖文件存在或是理当存在，或是就没有依赖文件。那么这条规则将被采用，退出该算法。</p>
</blockquote>
<p>6、如果经过第5步，没有模式规则被找到，那么就做更进一步的搜索。对于存在于列表中的第一个模式规则：</p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>1）如果规则是终止规则，那就忽略它，继续下一条模式规则。</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>2）计算依赖文件。（同第5步）</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>3）测试所有的依赖文件是否存在或是理当存在。</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>4）对于不存在的依赖文件，递归调用这个算法查找他是否可以被隐含规则找到。</p>
</blockquote>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>5）如果所有的依赖文件存在或是理当存在，或是就根本没有依赖文件。那么这条规则被采用，退出该算法。</p>
</blockquote>
<p>7、如果没有隐含规则可以使用，查看".DEFAULT"规则，如果有，采用，把".DEFAULT"的命令给T使用。</p>
</blockquote>
<p><br>
<br>
一旦规则被找到，就会执行其相当的命令，而此时，我们的自动化变量的值才会生成。<br>
<br>
<br>
<br>
<span style="font-size:14px; color:#cc0000"><strong><br>
</strong></span></p>
<h1><a name="t63"></a><span style="color:rgb(204,0,0)"><strong><span style="font-size:24px">使用make更新函数库文件</span></strong></span></h1>
<span style="font-size:14px; color:#cc0000"><strong>———————————</strong></span><br>
<br>
<br>
函数库文件也就是对Object文件（程序编译的中间文件）的打包文件。在Unix下，一般是由命令"ar"来完成打包工作。<br>
<br>
<br>
<h2><a name="t64"></a>一、函数库文件的成员</h2>
<br>
<br>
一个函数库文件由多个文件组成。你可以以如下格式指定函数库文件及其组成：<br>
<br>
<br>
archive(member)<br>
<br>
<br>
这个不是一个命令，而一个目标和依赖的定义。一般来说，这种用法基本上就是为了"ar"命令来服务的。如：<br>
<br>
foolib(hack.o) : hack.o<br>
ar cr foolib hack.o<br>
<br>
<br>
如果要指定多个member，那就以空格分开，如：<br>
<br>
<br>
foolib(hack.o kludge.o)<br>
<br>
<br>
其等价于：<br>
<br>
<br>
foolib(hack.o) foolib(kludge.o)<br>
<br>
<br>
你还可以使用Shell的文件通配符来定义，如：<br>
<br>
foolib(*.o)<br>
<br>
<br>
<h2><a name="t65"></a><span style="color:#ff0000"><strong>二、函数库成员的隐含规则</strong></span></h2>
<br>
<br>
当 make搜索一个目标的隐含规则时，一个特殊的特性是，如果这个目标是"a(m)"形式的，其会把目标变成"(m)"。于是，如果我们的成员是"%.o" 的模式定义，并且如果我们使用"make foo.a(bar.o)"的形式调用Makefile时，隐含规则会去找"bar.o"的规则，如果没有定义bar.o的规则，那么内建隐含规则生效，make会去找bar.c文件来生成bar.o，如果找得到的话，make执行的命令大致如下：<br>
<br>
<br>
cc -c bar.c -o bar.o<br>
ar r foo.a bar.o<br>
rm -f bar.o<br>
<br>
<br>
还有一个变量要注意的是"$%"，这是专属函数库文件的自动化变量，有关其说明请参见"自动化变量"一节。<br>
<br>
<br>
<br>
<h2><a name="t66"></a><span style="color:#ff0000"><strong>三、函数库文件的后缀规则</strong></span></h2>
<br>
<br>
你可以使用"后缀规则"和"隐含规则"来生成函数库打包文件，如：<br>
<br>
<br>
.c.a:<br>
$(CC) $(CFLAGS) $(CPPFLAGS) -c $&lt; -o $*.o<br>
$(AR) r $@ $*.o<br>
$(RM) $*.o<br>
<br>
<br>
其等效于：<br>
<br>
<br>
(%.o) : %.c<br>
$(CC) $(CFLAGS) $(CPPFLAGS) -c $&lt; -o $*.o<br>
$(AR) r $@ $*.o<br>
$(RM) $*.o<br>
<br>
<br>
<h2><a name="t67"></a><strong><span style="color:#cc0000">四、注意事项</span></strong></h2>
<br>
<br>
在进行函数库打包文件生成时，请小心使用make的并行机制（"-j"参数）。如果多个ar命令在同一时间运行在同一个函数库打包文件上，就很有可以损坏这个函数库文件。所以，在make未来的版本中，应该提供一种机制来避免并行操作发生在函数打包文件上。<br>
但就目前而言，你还是应该不要尽量不要使用"-j"参数。<br>
<br>
<br>
<br>
<h1><a name="t68"></a><span style="color:#ff0000"><strong><span style="font-size:24px">后序</span></strong></span></h1>
<span style="color:#ff0000"><strong>——</strong></span><br>
<br>
<br>
终于到写结束语的时候了，以上基本上就是GNU make的Makefile的所有细节了。其它的产商的make基本上也就是这样的，无论什么样的make，都是以文件的依赖性为基础的，其基本是都是遵循一个标准的。这篇文档中80%的技术细节都适用于任何的make，我猜测"函数"那一章的内容可能不是其它make所支持的，而隐含规则方面，我想不同的make会有不同的实现，我没有精力来查看GNU的make和VC的nmake、BCB的make，或是别的UNIX下的make有些什么样的差别，一是时间精力不够，二是因为我基本上都是在Unix下使用make，以前在SCO
 Unix和IBM的AIX，现在在Linux、Solaris、HP-UX、AIX和Alpha下使用，Linux和Solaris下更多一点。不过，我可以肯定的是，在Unix下的make，无论是哪种平台，几乎都使用了Richard Stallman开发的make和cc/gcc的编译器，而且，基本上都是GNU的make（公司里所有的UNIX机器上都被装上了GNU的东西，所以，使用GNU的程序也就多了一些）。GNU的东西还是很不错的，特别是使用得深了以后，越来越觉得GNU的软件的强大，也越来越觉得GNU的在操作系统中（主要是Unix，甚至Windows）"杀伤力"。<br>
<br>
<br>
对于上述所有的make的细节，我们不但可以利用make这个工具来编译我们的程序，还可以利用make来完成其它的工作，因为规则中的命令可以是任何Shell之下的命令，所以，在Unix下，你不一定只是使用程序语言的编译器，你还可以在Makefile中书写其它的命令，如：tar、awk、mail、sed、cvs、compress、ls、rm、yacc、rpm、 ftp……等等，等等，来完成诸如"程序打包"、"程序备份"、"制作程序安装包"、"提交代码"、"使用程序模板"、"合并文件"等等五花八门的功能，文件操作，文件管理，编程开发设计，或是其它一些异想天开的东西。比如，以前在书写银行交易程序时，由于银行的交易程序基本一样，就见到有人书写了一些交易的通用程序模板，在该模板中把一些网络通讯、数据库操作的、业务操作共性的东西写在一个文件中，在这些文件中用些诸如"@@@N、###N"奇怪字串标注一些位置，然后书写交易时，只需按照一种特定的规则书写特定的处理，最后在make时，使用awk和sed，把模板中的"@@@N、###N"等字串替代成特定的程序，形成C文件，然后再编译。这个动作很像数据库的"扩展C"语言（即在C语言中用"EXEC　SQL"的样子执行SQL语句，在用
 cc/gcc编译之前，需要使用"扩展C"的翻译程序，如cpre，把其翻译成标准C）。如果<br>
你在使用make时有一些更为绝妙的方法，请记得告诉我啊。<br>
<br>
回头看看整篇文档，不觉记起几年前刚刚开始在Unix下做开发的时候，有人问我会不会写Makefile时，我两眼发直，根本不知道在说什么。一开始看到别人在vi中写完程序后输入"!make"时，还以为是vi的功能，后来才知道有一个Makefile在作怪，于是上网查啊查，那时又不愿意看英文，发现就根本没有中文的文档介绍Makefile，只得看别人写的Makefile，自己瞎碰瞎搞才积累了一点知识，但在很多地方完全是知其然不知所以然。后来开始从事UNIX下产品软件的开发，看到一个400人年，近200万行代码的大工程，发现要编译这样一个庞然大物，如果没有Makefile，那会是多么恐怖的一样事啊。于是横下心来，狠命地读了一堆英文文档，才觉得对其掌握了。但发现目前网上对Makefile介绍的文章还是少得那么的可怜，所以想写这样一篇文章，共享给大家，希望能对各位有所帮助。<br>
<br>
<br>
现在我终于写完了，看了看文件的创建时间，这篇技术文档也写了两个多月了。发现，自己知道是一回事，要写下来，跟别人讲述又是另外一回事，而且，现在越来越没有时间专研技术细节，所以在写作时，发现在阐述一些细节问题时很难做到严谨和精练，而且对先讲什么后讲什么不是很清楚，所以，还是参考了一些国外站点上的资料和题纲，以及一些技术书籍的语言风格，才得以完成。整篇文档的提纲是基于GNU的 Makefile技术手册的提纲来书写的，并结合了自己的工作经验，以及自己的学习历程。因为从来没有写过这么长，这么细的文档，所以一定会有很多地方存在表达问题，语言歧义或是错误。因些，我迫切地得等待各位给我指证和建议，以及任何的反馈。<br>
<br>
最后，还是利用这个后序，介绍一下自己。我目前从事于所有Unix平台下的软件研发，主要是做分布式计算/网格计算方面的系统产品软件，并且我对于下一代的计算机革命——网格计算非常地感兴趣，对于分布式计算、P2P、Web Service、J2EE技术方向也很感兴趣，同时，对于项目实施、团队管理、项目管理也小有心得，希望同样和我战斗在“技术和管理并重”的阵线上的年轻一代，能够和我多多地交流。我的MSN是：haoel@hotmail.com（常用），QQ是：753640（不常用）。（注：请勿给我MSN的邮箱发信，由于hotmail的垃圾<br>
邮件导致我拒收这个邮箱的所有来信）<br>
<br>
<br>
我欢迎任何形式的交流，无论是讨论技术还是管理，或是其它海阔天空的东西。除了政治和娱乐新闻我不关心，其它只要积极向上的东西我都欢迎！<br>
<br>
<br>
最最后，我还想介绍一下make程序的设计开发者。<br>
<br>
首当其冲的是： Richard Stallman<br>
<br>
开源软件的领袖和先驱，从来没有领过一天工资，从来没有使用过Windows操作系统。对于他的事迹和他的软件以及他的思想，我无需说过多的话，相信大家对这个人并不比我陌生，这是他的主页：http://www.stallman.org/ 。<br>
<br>
<br>
<br>
第二位是：Roland McGrath<br>
<br>
<br>
个人主页是：http://www.frob.com/~roland/ ，下面是他的一些事迹：<br>
<br>
1） 合作编写了并维护GNU make。
<p></p>
<blockquote style="margin:0 0 0 40px; border:none; padding:0px">
<p>2） 和Thomas Bushnell一同编写了GNU Hurd。</p>
<p>3） 编写并维护着GNU C library。</p>
<p>4） 合作编写并维护着部分的GNU Emacs。</p>
</blockquote>
<p><br>
在此，向这两位开源项目的斗士致以最真切的敬意。</p>
<style data-savepage-href="http://static.blog.csdn.net/public/res-min/markdown_views.css?v=2.0">.hljs {
  display: block;
  padding: 0.5em;
  background: #fff;
  color: #000;

}
.hljs-comment,
.hljs-template_comment,
.hljs-javadoc,
.hljs-comment * {
  color: #800;
}
.hljs-keyword,
.method,
.hljs-list .hljs-title,
.clojure .hljs-built_in,
.nginx .hljs-title,
.hljs-tag .hljs-title,
.setting .hljs-value,
.hljs-winutils,
.tex .hljs-command,
.http .hljs-title,
.hljs-request,
.hljs-status {
  color: #008;
}
.hljs-envvar,
.tex .hljs-special {
  color: #660;
}
.hljs-string,
.hljs-tag .hljs-value,
.hljs-cdata,
.hljs-filter .hljs-argument,
.hljs-attr_selector,
.apache .hljs-cbracket,
.hljs-date,
.hljs-regexp,
.coffeescript .hljs-attribute {
  color: #080;
}
.hljs-sub .hljs-identifier,
.hljs-pi,
.hljs-tag,
.hljs-tag .hljs-keyword,
.hljs-decorator,
.ini .hljs-title,
.hljs-shebang,
.hljs-prompt,
.hljs-hexcolor,
.hljs-rules .hljs-value,
.css .hljs-value .hljs-number,
.hljs-literal,
.hljs-symbol,
.ruby .hljs-symbol .hljs-string,
.hljs-number,
.css .hljs-function,
.clojure .hljs-attribute {
  color: #066;
}
.hljs-class .hljs-title,
.haskell .hljs-type,
.smalltalk .hljs-class,
.hljs-javadoctag,
.hljs-yardoctag,
.hljs-phpdoc,
.hljs-typename,
.hljs-tag .hljs-attribute,
.hljs-doctype,
.hljs-class .hljs-id,
.hljs-built_in,
.setting,
.hljs-params,
.hljs-variable,
.clojure .hljs-title {
  color: #606;
}
.css .hljs-tag,
.hljs-rules .hljs-property,
.hljs-pseudo,
.hljs-subst {
  color: #000;
}
.css .hljs-class,
.css .hljs-id {
  color: #9b703f;
}
.hljs-value .hljs-important {
  color: #f70;
  font-weight: bold;
}
.hljs-rules .hljs-keyword {
  color: #c5af75;
}
.hljs-annotation,
.apache .hljs-sqbracket,
.nginx .hljs-built_in {
  color: #9b859d;
}
.hljs-preprocessor,
.hljs-preprocessor *,
.hljs-pragma {
  color: #444;
}
.tex .hljs-formula {
  background-color: #eee;
  font-style: italic;
}
.diff .hljs-header,
.hljs-chunk {
  color: #808080;
  font-weight: bold;
}
.diff .hljs-change {
  background-color: #bccff9;
}
.hljs-addition {
  background-color: #baeeba;
}
.hljs-deletion {
  background-color: #ffc8bd;
}
.hljs-comment .hljs-yardoctag {
  font-weight: bold;
}
.markdown_views {
  font-family: 'microsoft yahei';
  font-size: 16px;
  color: #3f3f3f;
}
.markdown_views * {
  box-sizing: border-box;
}
.markdown_views h1,
.markdown_views h2,
.markdown_views h3,
.markdown_views h4,
.markdown_views h5,
.markdown_views h6 {
  font-family: inherit;
  font-weight: 300;
  line-height: 1.1;
  color: inherit;
  margin: .8em 0;
  text-align: start;
}
/* add by zhangw */
.markdown_views h1{
  font-size: 2.6em;
}
.markdown_views h2{
  font-size: 2.15em;
}
.markdown_views h3 {
  font-size: 1.7em;
}
.markdown_views h4 {
    font-size: 1.25em;
}
.markdown_views h5 {
    font-size: 1em;
}
.markdown_views h6 {
    font-size: .8em;
}
.markdown_views a{
  color: #4fa1db;
}


.markdown_views p,
.markdown_views pre,
.markdown_views pre.prettyprint,
.markdown_views blockquote {
  margin: 0 0 1.7em;
  line-height: 170%;
}
.markdown_views p,
.markdown_views ol,
.markdown_views ul,
.markdown_views dl{
  line-height: 170%;
  margin-bottom: 1.7em;
}
.markdown_views img{
  margin-top: 15px;
  margin-bottom: 15px;
}
.markdown_views hr {
  margin: 2em 0;
  border: 0;
  border-top: 1px solid rgba(128,128,128,0.1);
}
.markdown_views dt {
  font-weight: bold;
}
.markdown_views abbr[title],
.markdown_views abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #999;
}
.markdown_views .initialism {
  font-size: 90%;
  text-transform: uppercase;
}
.markdown_views blockquote {
  padding: 15px 20px;
  border-left: 10px solid rgba(128,128,128,0.075);
  background-color: rgba(128,128,128,0.05);
  border-radius: 0 5px 5px 0;
}
.markdown_views blockquote p {
  line-height: 1.5;
  font-size: 1em;
  color: #6f6f6f;
}
.markdown_views blockquote p:last-child {
  margin-bottom: 0;
}
.markdown_views blockquote small,
.markdown_views blockquote .small {
  display: block;
  line-height: 1.45;
  color: #999;
}
.markdown_views blockquote small:before,
.markdown_views blockquote .small:before {
  content: "— ";
}
.markdown_views blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid rgba(128,128,128,0.075);
  border-left: 0;
}
.markdown_views blockquote.pull-right p,
.markdown_views blockquote.pull-right small,
.markdown_views blockquote.pull-right .small {
  text-align: right;
}
.markdown_views blockquote.pull-right small:before,
.markdown_views blockquote.pull-right .small:before {
  content: "";
}
.markdown_views blockquote.pull-right small:after,
.markdown_views blockquote.pull-right .small:after {
  content: " —";
}
.markdown_views blockquote:before,
.markdown_views blockquote:after {
  content: "";
}
.markdown_views address {
  margin-bottom: 21px;
  font-style: normal;
  line-height: 1.45;
}
.markdown_views code,
.markdown_views kbd,
.markdown_views pre,
.markdown_views samp {
  font-family: "Source Code Pro", monospace;
}
.markdown_views code {
  padding: 2px 4px;
  font-size: 90%;
  color: #3f3f3f;
  background-color: rgba(128,128,128,0.075);
  white-space: nowrap;
  border-radius: 0;
}
.markdown_views pre {
  display: block;
  padding: 10px;
  margin: 0 0 10.5px;
  font-size: 14px;
  line-height: 1.45;
  word-break: break-all;
  word-wrap: break-word;
  color: #333;
  background-color: rgba(128,128,128,0.05);
  border: 1px solid rgba(128,128,128,0.075);
  border-radius: 0;
}
.markdown_views pre code {
  padding: 0;
  font-size: 90%;
  color: inherit;
  white-space: pre;
  word-wrap: normal;
  background-color: transparent;
  border-radius: 0;
}
.markdown_views .pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.markdown_views .sequence-diagram,
.markdown_views .flow-chart {
  text-align: center;
  margin-bottom: 1.1em;
}
.markdown_views table {
  width: 100%;
  background-color: transparent;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #eee;
}
.markdown_views table th,
.markdown_views table td {
  padding: 8px;
  line-height: 20px;
  vertical-align: top;
  border: 1px solid #eee;
}
.markdown_views .prettyprint {
  padding: 5px;
  position: relative;
  overflow-y: hidden;
  overflow-x: auto;
  white-space: nowrap;
  padding-left: 60px;
}
.markdown_views .prettyprint .pre-numbering {
  position: absolute;
  width: 50px;
  background-color: #eee;
  top: 0px;
  left: 0;
  margin: 0;
  padding: 6px 0 40px 0;
  border-right: 1px solid #ddd;
  list-style: none;
  text-align: right;
}
.markdown_views .prettyprint .pre-numbering li {
  padding: 0 5px;
  list-style: none;
  margin-left: 0;
}
.markdown_views em {
  font-style: italic;
}
</style>
            </div>
        </article>
        <div class="readall_box csdn-tracking-statistics readall_box_nobg" data-mod="popu_376" style="display: none;">
			<div class="read_more_mask"></div>
            <a class="btn btn-large btn-gray-fred read_more_btn" target="_self">阅读全文</a>
        </div>
        <div class="article_copyright">
            
        </div>
        <!--  <div class="reward_box">
            <div class="tit">
              <button class="btn_reward"><i class="icon iconfont icon-dashang-"></i></button>
            </div>
            <dl class="clearfix">
              <dt><a href="#" target="_blank">近期打赏</a></dt>
              <dd><a href="#" target="_blank"><img src="http://avatar.csdn.net/9/3/2/2_nzf_001.jpg" alt="聂兆芳" title="聂兆芳"></a></dd>
              <dd><a href="#" target="_blank"><img src="http://avatar.csdn.net/9/3/2/2_nzf_001.jpg" alt="聂兆芳" title="聂兆芳"></a></dd>
              <dd><a href="#" target="_blank"><img src="http://avatar.csdn.net/9/3/2/2_nzf_001.jpg" alt="聂兆芳" title="聂兆芳"></a></dd>
              <dd><a href="#" target="_blank"><img src="http://avatar.csdn.net/9/3/2/2_nzf_001.jpg" alt="聂兆芳" title="聂兆芳"></a></dd>
              <dd><a href="#" target="_blank"><img src="http://avatar.csdn.net/9/3/2/2_nzf_001.jpg" alt="聂兆芳" title="聂兆芳"></a></dd>
            </dl>
          </div>-->

        <ul class="article_collect clearfix csdn-tracking-statistics" data-mod="popu_378" style="display: none;">
            <li class="tit">本文已收录于以下专栏：</li>
            
        </ul>
        <div class="comment_box clearfix">
            <div id="comment_form">
                <div id="commentsbmitarear"><div class="guest_link"><span class="log_ico"><i class="icon iconfont icon-yonghu"></i></span><span class="txt">目前您尚未登录，请 <a href="https://passport.csdn.net/account/login?from=http%3A%2F%2Fblog.csdn.net%2Fruglcc%2Farticle%2Fdetails%2F7814546">登录</a> 或 <a href="http://passport.csdn.net/account/register?from=http%3A%2F%2Fblog.csdn.net%2Fruglcc%2Farticle%2Fdetails%2F7814546">注册</a> 后进行评论</span></div></div>
            </div>
        </div>

        <div class="comment_li_outbox">
            <div id="comment_list"> <div class="comment_li_box clearfix">         <dl class="comment_list clearfix" id="comment_item_7311658">           <dt>               <a href="/KingLi123"><img data-savepage-src="http://avatar.csdn.net/D/D/8/3_kingli123.jpg" src="" alt="KingLi123"></a></dt>           <dd>             <ul class="com_r clearfix">               <li class="top clearfix">                 <h4><a href="/KingLi123">KingLi123</a></h4>                 <span class="time">4天前 10:26</span>                 <span class="floor_num" floor="59">59楼</span>               </li>               <li class="mid clearfix">                 <div class="comment_p">没有介绍到警告（-Wall）</div>               </li>               <li class="bot clearfix">                   <div>                     <a href="#reply" class="com_reply btn btn-noborder reply_btn" title="回复" commentid="7311658" floor="59">回复</a>                   </div>                </li>              </ul>            </dd>          </dl><div class="child_comment" data-listshow="false">   <div class="autoHeight clearfix">   </div></div>       </div> <div class="comment_li_box clearfix">         <dl class="comment_list clearfix" id="comment_item_7281454">           <dt>               <a href="/qq_34550384"><img data-savepage-src="http://avatar.csdn.net/A/B/6/3_qq_34550384.jpg" src="" alt="qq_34550384"></a></dt>           <dd>             <ul class="com_r clearfix">               <li class="top clearfix">                 <h4><a href="/qq_34550384">qq_34550384</a></h4>                 <span class="time">2017-10-24 19:58</span>                 <span class="floor_num" floor="58">58楼</span>               </li>               <li class="mid clearfix">                 <div class="comment_p">提示，希望楼主改下：<br>在Makefile 示例中的 指令换行符应为”\“ ，原文为“/”。<br>其次示例中的指令前为tab，希望楼主增加提示。</div>               </li>               <li class="bot clearfix">                   <div>                     <a href="#reply" class="com_reply btn btn-noborder reply_btn" title="回复" commentid="7281454" floor="58">回复</a>                   </div>                </li>              </ul>            </dd>          </dl><div class="child_comment" data-listshow="false">   <div class="autoHeight clearfix">   </div></div>       </div> <div class="comment_li_box clearfix">         <dl class="comment_list clearfix" id="comment_item_7269898">           <dt>               <a href="/weixin_38852098"><img data-savepage-src="http://avatar.csdn.net/A/8/4/3_weixin_38852098.jpg" src="" alt="weixin_38852098"></a></dt>           <dd>             <ul class="com_r clearfix">               <li class="top clearfix">                 <h4><a href="/weixin_38852098">weixin_38852098</a></h4>                 <span class="time">2017-10-18 16:39</span>                 <span class="floor_num" floor="57">57楼</span>               </li>               <li class="mid clearfix">                 <div class="comment_p">&amp;quot;\&amp;quot;不应该是“/”么，</div>               </li>               <li class="bot clearfix">                   <div>                     <a href="#reply" class="com_reply btn btn-noborder reply_btn" title="回复" commentid="7269898" floor="57">回复</a>                   </div>                </li>              </ul>            </dd>          </dl><div class="child_comment" data-listshow="false">   <div class="autoHeight clearfix">   </div></div>       </div><div class="clear"></div></div>
        </div>

        <div class="more_comment" style="display: block;">
            <div id="comment_bar" class="trackgin-ad" data-mod="popu_385" style="display: block;"><a id="load_comments" class="btn btn-large more_comment_btn" page="2">查看 <span>61</span> 条热评<i class="icon iconfont icon-xiajiantou"></i></a></div>
        </div>

        <h3 class="recommend_tit">相关文章推荐</h3>
        <div class="recommend_list clearfix">
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/xinyuan510214/article/details/50825633" target="_blank" strategy="BlogCommendFromBaidu_0">Makefile中的-Wall -O2 -Os -g等选项介绍</a></h2>
                    <div class="summary">
                        -Wall：选项可以打印出编译时所有的错误或者警告信息。这个选项很容易被遗忘，编译的时候，没有错误或者警告提示，以为自己的程序很完美，其实，里面有可能隐藏着许多陷阱。变量没有初始化，类型不匹配，或者类...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/xinyuan510214" target="_blank" strategy="BlogCommendFromBaidu_0"><img data-savepage-src="http://avatar.csdn.net/5/6/F/2_xinyuan510214.jpg" src="" alt="xinyuan510214" title="xinyuan510214"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/xinyuan510214" target="_blank">xinyuan510214</a></li>
                        <li class="time">2016-03-08 11:14</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>4487</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/xinyuan510214/article/details/50825499" target="_blank" strategy="BlogCommendFromBaidu_1">Makefile选项CFLAGS、LDFLAGS、LIBS</a></h2>
                    <div class="summary">
                        CFLAGS 表示用于 C 编译器的选项，
CXXFLAGS 表示用于 C++ 编译器的选项。
这两个变量实际上涵盖了编译和汇编两个步骤。

CFLAGS：
 指定头文件（.h文件）的路径，...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/xinyuan510214" target="_blank" strategy="BlogCommendFromBaidu_1"><img data-savepage-src="http://avatar.csdn.net/5/6/F/2_xinyuan510214.jpg" src="" alt="xinyuan510214" title="xinyuan510214"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/xinyuan510214" target="_blank">xinyuan510214</a></li>
                        <li class="time">2016-03-08 10:55</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>362</span></li>
                    </ul>
                </dd>
            </dl>
            
            <!--dl class="clearfix csdn-tracking-statistics" data-mod="popu_393">
                <dt><a href="http://edu.csdn.net/huiyiCourse/series_detail/64?utm_source=blog10" target="_blank"><img class="maxwidth" src="http://img.blog.csdn.net/20170928113144608" alt="" title=""></a></dt>
                <dd>
                    <div class="summary">
                        <h2><a href='http://edu.csdn.net/topic/python1?utm_source=blog10' target='_blank'>伤心啊！年度热门编程语言排行榜出来了...</a></h2>  <div class="summary">近期，IEEE Spectrum 发布了第四届顶级编程语言交互排行榜。结合 10 个线上数据源的 12 个标准，对 48 种语言进行了排行！此外，七牛云许式伟曾说过Go语言会取代Java...气氛... </div> 
                    </div>
                </dd>
            </dl-->
	<script></script><div id="_kuigutk1b9e"></div>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/zhaoshaolei123/article/details/76169331" target="_blank" strategy="BlogCommendFromBaidu_2">NDK_PROJECT_PATH = null问题分析</a></h2>
                    <div class="summary">
                        原文路径：http://www.jianshu.com/p/b4753ab1f8e7

  




Error:(115) *** Android NDK: Aborting    .  Stop....
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/zhaoshaolei123" target="_blank" strategy="BlogCommendFromBaidu_2"><img data-savepage-src="http://avatar.csdn.net/3/7/2/2_zhaoshaolei123.jpg" src="" alt="zhaoshaolei123" title="zhaoshaolei123"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/zhaoshaolei123" target="_blank">zhaoshaolei123</a></li>
                        <li class="time">2017-07-27 09:26</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>657</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/shreck66/article/details/49583057" target="_blank" strategy="BlogCommendFromBaidu_3">linux下动态与静态链接库的使用及区别</a></h2>
                    <div class="summary">
                        1.为什么要有链接库我们平时在写C代码时一定会经常重复写某些很多程序中都经常用到的代码，比方说字符串的简单操作函数，或者链表等。那么我们如何能避免老是重复的去写这些基础的代码呢？也许你会不假思索的想到...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/Shreck66" target="_blank" strategy="BlogCommendFromBaidu_3"><img data-savepage-src="http://avatar.csdn.net/2/D/4/2_shreck66.jpg" src="" alt="Shreck66" title="Shreck66"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/Shreck66" target="_blank">Shreck66</a></li>
                        <li class="time">2015-11-02 09:56</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>9918</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/nodeathphoenix/article/details/9058531" target="_blank" strategy="BlogCommendFromBaidu_4">linux程序同时链接动态库与静态库</a></h2>
                    <div class="summary">
                        一
在应用程序需要连接外部库的情况下，linux默认对库的连接是使用动态库，在找不到动态库的情况下再选择静态库。使用方式为：
gcc test.cpp -L. -ltestlib
如果当前目录有...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/nodeathphoenix" target="_blank" strategy="BlogCommendFromBaidu_4"><img data-savepage-src="http://avatar.csdn.net/E/9/F/2_nodeathphoenix.jpg" src="" alt="nodeathphoenix" title="nodeathphoenix"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/nodeathphoenix" target="_blank">nodeathphoenix</a></li>
                        <li class="time">2013-06-08 18:33</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>11039</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/su_linux/article/details/7285228" target="_blank" strategy="BlogCommendFromBaidu_5">linux 静态库的链接 undefined reference</a></h2>
                    <div class="summary">
                        最近在Linux下编程发现一个诡异的现象，就是在链接一个静态库的时候总是报错，类似下面这样的错误：
(.text+0x13): undefined reference to `func' 
   ...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/su_linux" target="_blank" strategy="BlogCommendFromBaidu_5"><img data-savepage-src="http://avatar.csdn.net/8/0/A/2_su_linux.jpg" src="" alt="su_linux" title="su_linux"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/su_linux" target="_blank">su_linux</a></li>
                        <li class="time">2012-02-22 22:35</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>7085</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/a600423444/article/details/7206015" target="_blank" strategy="BlogCommendFromBaidu_6">Linux GCC编译使用动态、静态链接库</a></h2>
                    <div class="summary">
                        在windows下动态链接库是以.dll后缀的文件，二在Linux中，是以.so作后缀的文件。
动态链接库的好处就是节省内存空间。


1、Linux下创建动态链接库
在使用GCC编译程序时...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/a600423444" target="_blank" strategy="BlogCommendFromBaidu_6"><img data-savepage-src="http://avatar.csdn.net/A/3/9/2_a600423444.jpg" src="" alt="a600423444" title="a600423444"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/a600423444" target="_blank">a600423444</a></li>
                        <li class="time">2012-01-16 23:01</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>37517</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/leonsc/article/details/4917816" target="_blank" strategy="BlogCommendFromBaidu_7">[Linux]链接，静态库和动态库</a></h2>
                    <div class="summary">
                        Filename：[Linux]链接，静态库和动态库Version：V1.0Date：12/01/2009Author：S.C.Leon ===============================...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/leonsc" target="_blank" strategy="BlogCommendFromBaidu_7"><img data-savepage-src="http://avatar.csdn.net/9/2/3/2_leonsc.jpg" src="" alt="leonsc" title="leonsc"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/leonsc" target="_blank">leonsc</a></li>
                        <li class="time">2009-12-01 23:53</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>9286</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/aiwoziji13/article/details/7330333" target="_blank" strategy="BlogCommendFromBaidu_8">"undefined reference to" 问题解决方法</a></h2>
                    <div class="summary">
                        最近在Linux下编程发现一个诡异的现象，就是在链接一个静态库的时候总是报错，类似下面这样的错误：
(.text+0x13): undefined reference to `func' 
   ...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/aiwoziji13" target="_blank" strategy="BlogCommendFromBaidu_8"><img data-savepage-src="http://avatar.csdn.net/6/0/9/2_aiwoziji13.jpg" src="" alt="aiwoziji13" title="aiwoziji13"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/aiwoziji13" target="_blank">aiwoziji13</a></li>
                        <li class="time">2012-03-07 20:13</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>384075</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/sunny04/article/details/17922645" target="_blank" strategy="BlogCommendFromBaidu_9">linux下动态库/静态库 链接路径设置问题</a></h2>
                    <div class="summary">
                        g++/gcc 连接 so动态库或者 .a静态库时，需要设置这些动态库的路径， 例如： 



g++ -o main main.cpp -L./lib -ldymamic -lpthread...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/sunny04" target="_blank" strategy="BlogCommendFromBaidu_9"><img data-savepage-src="http://avatar.csdn.net/0/0/1/2_sunny04.jpg" src="" alt="sunny04" title="sunny04"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/sunny04" target="_blank">sunny04</a></li>
                        <li class="time">2014-01-06 17:37</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>1875</span></li>
                    </ul>
                </dd>
            </dl>
            

	   

            

            
        
            <dl class="clearfix csdn-tracking-statistics downloadElement" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
               	<dt><a href="http://download.csdn.net/detail/liuweiml/9652604" target="_blank" strategy="BlogCommendFromCsdn_10"><img class="maxwidth" data-savepage-src="http://download.csdn.net/images/minetype/pdf.svg" src="data:image/svg+xml;resource=25;base64," alt="" title=""></a></dt>
		<dd>
			<div class="summary">
				<h2><a href="http://download.csdn.net/detail/liuweiml/9652604" target="_blank" strategy="BlogCommendFromCsdn_10">Makefile经典教程(最掌握这部分足够).pdf</a></h2>
				<div class="summary">
				  <ul>
					  <li class="time">2016-10-13 11:39</li>
					  <li class="visited_num fileSize">294KB</li>
					  <li class="download_btn"><a href="http://download.csdn.net/detail/liuweiml/9652604" target="_blank">下载</a></li>
				  </ul>
				</div> 
			</div>
		</dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/shaohuayishi2434/article/details/53172167" target="_blank" strategy="BlogCommendFromCsdn_11">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/shaohuayishi2434" target="_blank" strategy="BlogCommendFromCsdn_11"><img data-savepage-src="http://avatar.csdn.net/6/8/7/2_shaohuayishi2434.jpg" src="" alt="shaohuayishi2434" title="shaohuayishi2434"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/shaohuayishi2434">shaohuayishi2434</a></li>
                        <li class="time">2016-11-15 15:49</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>191</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/hanghang121/article/details/41575895" target="_blank" strategy="BlogCommendFromCsdn_12">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/hanghang121" target="_blank" strategy="BlogCommendFromCsdn_12"><img data-savepage-src="http://avatar.csdn.net/9/E/0/2_hanghang121.jpg" src="" alt="hanghang121" title="hanghang121"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/hanghang121">hanghang121</a></li>
                        <li class="time">2014-11-28 10:46</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>363</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/dreamclr/article/details/47167829" target="_blank" strategy="BlogCommendFromCsdn_13">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/DreamCLR" target="_blank" strategy="BlogCommendFromCsdn_13"><img data-savepage-src="http://avatar.csdn.net/7/F/9/2_dreamclr.jpg" src="" alt="DreamCLR" title="DreamCLR"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/DreamCLR">DreamCLR</a></li>
                        <li class="time">2015-07-31 11:33</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>191</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/u013045749/article/details/44726979" target="_blank" strategy="BlogCommendFromCsdn_14">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/u013045749" target="_blank" strategy="BlogCommendFromCsdn_14"><img data-savepage-src="http://avatar.csdn.net/D/E/C/2_u013045749.jpg" src="" alt="u013045749" title="u013045749"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/u013045749">u013045749</a></li>
                        <li class="time">2015-03-29 14:39</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>257</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/lh2016rocky/article/details/70851906" target="_blank" strategy="BlogCommendFromCsdn_15">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要


      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profe...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/lh2016rocky" target="_blank" strategy="BlogCommendFromCsdn_15"><img data-savepage-src="http://avatar.csdn.net/3/F/5/2_lh2016rocky.jpg" src="" alt="lh2016rocky" title="lh2016rocky"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/lh2016rocky">lh2016rocky</a></li>
                        <li class="time">2017-04-27 13:59</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>87</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/windsoul85/article/details/10005747" target="_blank" strategy="BlogCommendFromCsdn_16">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/windsoul85" target="_blank" strategy="BlogCommendFromCsdn_16"><img data-savepage-src="http://avatar.csdn.net/A/9/F/2_windsoul85.jpg" src="" alt="windsoul85" title="windsoul85"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/windsoul85">windsoul85</a></li>
                        <li class="time">2013-08-16 16:50</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>417</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/maple2150/article/details/42459345" target="_blank" strategy="BlogCommendFromCsdn_17">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/maple2150" target="_blank" strategy="BlogCommendFromCsdn_17"><img data-savepage-src="http://avatar.csdn.net/4/6/3/2_maple2150.jpg" src="" alt="maple2150" title="maple2150"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/maple2150">maple2150</a></li>
                        <li class="time">2015-01-06 14:58</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>453</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/outtoo/article/details/20386885" target="_blank" strategy="BlogCommendFromCsdn_18">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和profess...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/outtoo" target="_blank" strategy="BlogCommendFromCsdn_18"><img data-savepage-src="http://avatar.csdn.net/E/E/D/2_outtoo.jpg" src="" alt="outtoo" title="outtoo"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/outtoo">outtoo</a></li>
                        <li class="time">2014-03-03 17:22</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>258</span></li>
                    </ul>
                </dd>
            </dl>
            
            <dl class="clearfix csdn-tracking-statistics" data-mod="popu_387" data-poputype="feed" data-feed-show="false" data-dsm="post">
                <dd>
                    <h2><a href="/kwame211/article/details/75518347" target="_blank" strategy="BlogCommendFromCsdn_19">Makefile经典教程(掌握这些足够)</a></h2>
                    <div class="summary">
                        makefile很重要

      什么是makefile？或许很多Winodws的程序员都不知道这个东西，因为那些Windows的IDE都为你做了这个工作，但我觉得要作一个好的和professio...
                    </div>
                    <ul>
                        <li class="avatar_img"><a href="http://blog.csdn.net/kwame211" target="_blank" strategy="BlogCommendFromCsdn_19"><img data-savepage-src="http://avatar.csdn.net/C/0/0/2_kwame211.jpg" src="" alt="kwame211" title="kwame211"></a></li>
                        <li class="user_name"><a href="http://blog.csdn.net/kwame211">kwame211</a></li>
                        <li class="time">2017-07-22 20:49</li>
                        <li class="visited_num"><i class="icon iconfont icon-read"></i><span>171</span></li>
                    </ul>
                </dd>
            </dl>
            </div>
    </main>
    <aside>
        <div class="right_box user_info">
            <dl class="inf_bar clearfix">
                <dt class="csdn-tracking-statistics" data-mod="popu_381">
                    <a href="http://blog.csdn.net/ruglcc" target="_blank">
                        <img data-savepage-src="http://avatar.csdn.net/D/F/4/1_ruglcc.jpg" src="" class="avatar_pic">
                    </a>
                    <span class="medals" title="">
                <svg class="icon" aria-hidden="true">
                    
                </svg>
              </span>
                </dt>
                <dd>
                    <h3 class="csdn-tracking-statistics" data-mod="popu_380"><a href="http://blog.csdn.net/ruglcc" target="_blank" id="uid">ruglcc</a></h3>
                    <span class="csdn-tracking-statistics" data-mod="popu_379"><a class="btn btn-redborder-small " id="span_add_follow" target="_self">＋关注</a></span>
                </dd>
            </dl>
            <div class="inf_number_box clearfix">
                <dl>
                    <dt>原创</dt>
                    <dd>75</dd>
                </dl>
                <dl>
                    <dt>粉丝</dt>
                    <dd id="fan">592</dd>
                </dl>
                <dl>
                    <dt>喜欢</dt>
                    <dd>0</dd>
                </dl>
								 <dl>
              <dt>码云</dt>
              <dd><a class="thinFont" href="https://gitee.com?utm_source=csdn_blog" target="_blank">未开通</a></dd>
            </dl>

            </div>
	    <div class="writings">
              <div class="public_signal clearfix">
                <h3>他的最新文章</h3>
                <a href="http://blog.csdn.net/ruglcc" target="_blank" class="more_z"><span>更多文章</span></a>
              </div>
                <ul class="inf_list clearfix csdn-tracking-statistics" data-mod="popu_382">
                    
                    <li class="clearfix">
                      
                        <a href="/ruglcc/article/details/78052053" target="_blank">R.swift 让iOS项目像Android  R 一样管理资源</a>
                    </li>
                    
                    <li class="clearfix">
                      
                        <a href="/ruglcc/article/details/76509213" target="_blank">iOS开发如何消除Xcode中的警告(黄色叹号)</a>
                    </li>
                    
                    <li class="clearfix">
                      
                        <a href="/ruglcc/article/details/76166200" target="_blank">Node.js +Swagger Editor + Swagger-UI 环境搭建</a>
                    </li>
                    
                    <li class="clearfix">
                      
                        <a href="/ruglcc/article/details/76147645" target="_blank">打造完美接口文档 - 发布springboot应用到阿里云服务器</a>
                    </li>
                    
                </ul>
            </div>
        </div>
        <div class="extension_other csdn-tracking-statistics" data-mod="popu_389">
						<!--u3032528-->
			<div class="flashrecommend">

<!-- 请置于所有广告位代码之前 -->
<script data-savepage-src="http://dup.baidustatic.com/js/dm.js" src=""></script>
           
<!-- 广告位：PC端-博客详情页右侧视窗1（feed流）-300*250 -->
<script></script><div id="_0f4e3tqy3mg7"></div>

		    </div>
        </div>

        
        <div class="fixRight">
            <div class="right_box padb0 csdn-tracking-statistics" data-mod="popu_391">
                <h3 class="tit"><span><em>在线课程</em></span></h3>
                <ul class="edu_li clearfix">
                  
                  <li>
                    <div>
                      <a href="http://edu.csdn.net/huiyiCourse/detail/594?utm_source=blog9" target="_blank">
                        <img data-savepage-src="http://img.bss.csdn.net/201711020956065261.png" src="data:image/png;resource=36;base64," alt="C语言大型软件设计的面向对象" title="C语言大型软件设计的面向对象">
                      </a>
                    </div>
                    <div>
                      <p><a href="http://edu.csdn.net/huiyiCourse/detail/594?utm_source=blog9" target="_blank">C语言大型软件设计的面向对象</a></p>
                      <p>讲师：宋宝华</p>
                    </div>
                  </li>
                  
                  <li>
                    <div>
                      <a href="http://edu.csdn.net/huiyiCourse/detail/596?utm_source=blog9" target="_blank">
                        <img data-savepage-src="http://img.bss.csdn.net/201711020954527574.png" src="data:image/png;resource=37;base64," alt="【免费直播】神经网络的原理及结构设计" title="【免费直播】神经网络的原理及结构设计">
                      </a>
                    </div>
                    <div>
                      <p><a href="http://edu.csdn.net/huiyiCourse/detail/596?utm_source=blog9" target="_blank">【免费直播】神经网络的原理及结构设计</a></p>
                      <p>讲师：何宇健</p>
                    </div>
                  </li>
                  
                </ul>
            </div>
			<!--u3032529-->
            <!-- <div class="extension_other csdn-tracking-statistics baidu_box" data-mod="popu_395">
								
                <script type="text/javascript" src="http://mpb1.iteye.com/cxpdpmumfaedgm.js"></script>
            </div> -->
			<div class="extension_other csdn-tracking-statistics bottomRcom" data-mod="popu_389" style="position: fixed; z-index: 1; opacity: 1; pointer-events: all; top: 20px; left: 1103.23px;">
						<!--u3032528-->
				<div class="flashrecommend">
				<script type="text/javascript" data-savepage-src="http://mpb1.iteye.com/bwocoltlyzdec.js" src=""></script>
				</div>
			</div>
        </div>
		<div class="user-hotArticle">
          <h3>热门文章</h3>
          <ul class="hotArticle-list csdn-tracking-statistics" data-mod="popu_521">
 
            <li>
              <a href="/ruglcc/article/details/7814546" target="_blank">Makefile经典教程(掌握这些足够)</a>
              <div class="read list-left"><i class="icon iconfont icon-read"></i><span>413063</span></div>
            </li>
 
            <li>
              <a href="/ruglcc/article/details/7802077" target="_blank">ubuntu永久修改主机名</a>
              <div class="read list-left"><i class="icon iconfont icon-read"></i><span>118237</span></div>
            </li>
 
            <li>
              <a href="/ruglcc/article/details/7832112" target="_blank">Ubuntu 12.04 下安装 Eclipse</a>
              <div class="read list-left"><i class="icon iconfont icon-read"></i><span>41266</span></div>
            </li>
 
            <li>
              <a href="/ruglcc/article/details/7821867" target="_blank">Emacs 编辑环境，第1部分:学习Emacs的基础知识</a>
              <div class="read list-left"><i class="icon iconfont icon-read"></i><span>25892</span></div>
            </li>
 
            <li>
              <a href="/ruglcc/article/details/49967209" target="_blank">唐巧总结的40个国人iOS技术博客</a>
              <div class="read list-left"><i class="icon iconfont icon-read"></i><span>24166</span></div>
            </li>
 
          </ul>
        </div>


    </aside>
</div>

<div class="left_fixed" style="left: 111.233px;">
      <div class="left_show_button">
        <span>
          <i class="icon iconfont icon-youjiantou"></i>
        </span>
      </div>
    <ul class="left_menu">

        <li>
            <button class="left-fixed-btn btn-like csdn-tracking-statistics" data-mod="popu_373" target="_self">
                <span class="iconbox border_red"><i class="icon iconfont icon-dianzan"></i></span>
				<span class="txt">90</span>
            </button>
        </li>
		<li id="blog_artical_directory">
            <button class="left-fixed-btn left_menu_btn csdn-tracking-statistics" data-mod="popu_372" target="_self">
                <span class="iconbox border_black"><i class="icon iconfont icon-mulu"></i></span>
            </button>
        </li>
        <li class="menu_con" style="overflow: hidden; height: 0px;">
            <div class="list_father">
                <div class="arr_box">
                    <button class="btn-noborder arr-btn scroll-down  left_scroll_down"><i class="icon iconfont icon-xiajiantou"></i></button>
                    <button class="btn-noborder arr-btn scroll-up left_scroll_top"><i class="icon iconfont icon-shangjiantou"></i></button>
                </div>
                <div class="arr"></div>
                <div id="csdnBlogDir"><ol class="first_li"><li><a href="#t0">1. Makefile 介绍</a></li><ol class="second_li"><li><a href="#t1">1-1. Makefile的规则</a></li><li><a href="#t2">1-2. 一个示例</a></li><li><a href="#t3">1-3. make是如何工作的</a></li><li><a href="#t4">1-4. makefile中使用变量</a></li><li><a href="#t5">1-5. 让make自动推导</a></li><li><a href="#t6">1-6. 另类风格的makefile</a></li><li><a href="#t7">1-7. 清空目标文件的规则</a></li></ol><li><a href="#t8">2. Makefile 总述</a></li><ol class="second_li"><li><a href="#t9">2-1. Makefile里有什么</a></li><li><a href="#t10">2-2. Makefile的文件名</a></li><li><a href="#t11">2-3. 引用其它的Makefile</a></li><li><a href="#t12">2-4. 环境变量 MAKEFILES</a></li><li><a href="#t13">2-5. make的工作方式</a></li></ol><li><a href="#t14">3. Makefile书写规则</a></li><ol class="second_li"><li><a href="#t15">3-1. 规则举例</a></li><li><a href="#t16">3-2. 规则的语法</a></li><li><a href="#t17">3-3. 在规则中使用通配符</a></li><li><a href="#t18">3-4. 文件搜寻</a></li><li><a href="#t19">3-5. 伪目标</a></li><li><a href="#t20">3-6. 多目标</a></li><li><a href="#t21">3-7. 静态模式</a></li><li><a href="#t22">3-8. 自动生成依赖性</a></li></ol><li><a href="#t23">4. Makefile 书写命令</a></li><ol class="second_li"><li><a href="#t24">4-1. 显示命令</a></li><li><a href="#t25">4-2. 命令执行</a></li><li><a href="#t26">4-3. 命令出错</a></li><li><a href="#t27">4-4. 嵌套执行make</a></li><li><a href="#t28">4-5. 定义命令包</a></li></ol><li><a href="#t29">5. 使用变量</a></li><ol class="second_li"><li><a href="#t30">5-1. 一变量的基础</a></li><li><a href="#t31">5-2. 二变量中的变量</a></li><li><a href="#t32">5-3. 三变量高级用法</a></li><li><a href="#t33">5-4. 四追加变量值</a></li><li><a href="#t34">5-5. 五override 指示符</a></li><li><a href="#t35">5-6. 六多行变量</a></li><li><a href="#t36">5-7. 七环境变量</a></li><li><a href="#t37">5-8. 八目标变量</a></li><li><a href="#t38">5-9. 九模式变量</a></li></ol><li><a href="#t39">6. 使用函数</a></li><ol class="second_li"><li><a href="#t40">6-1. 一函数的调用语法</a></li><li><a href="#t41">6-2. 二字符串处理函数</a></li><li><a href="#t42">6-3. 三文件名操作函数</a></li><li><a href="#t43">6-4. 四foreach 函数</a></li><li><a href="#t44">6-5. 五if 函数</a></li><li><a href="#t45">6-6. 六call函数</a></li><li><a href="#t46">6-7. 七origin函数</a></li><li><a href="#t47">6-8. 八shell函数</a></li><li><a href="#t48">6-9. 九控制make的函数</a></li></ol><li><a href="#t49">7. make 的运行</a></li><ol class="second_li"><li><a href="#t50">7-1. 一make的退出码</a></li><li><a href="#t51">7-2. 二指定Makefile</a></li><li><a href="#t52">7-3. 三指定目标</a></li><li><a href="#t53">7-4. 四检查规则</a></li><li><a href="#t54">7-5. 五make的参数</a></li></ol><li><a href="#t55">8. 隐含规则</a></li><ol class="second_li"><li><a href="#t56">8-1. 一使用隐含规则</a></li><li><a href="#t57">8-2. 二隐含规则一览</a></li><li><a href="#t58">8-3. 三隐含规则使用的变量</a></li><li><a href="#t59">8-4. 四隐含规则链</a></li><li><a href="#t60">8-5. 五定义模式规则</a></li><li><a href="#t61">8-6. 六老式风格的后缀规则</a></li><li><a href="#t62">8-7. 七隐含规则搜索算法</a></li></ol><li><a href="#t63">9. 使用make更新函数库文件</a></li><ol class="second_li"><li><a href="#t64">9-1. 一函数库文件的成员</a></li><li><a href="#t65">9-2. 二函数库成员的隐含规则</a></li><li><a href="#t66">9-3. 三函数库文件的后缀规则</a></li><li><a href="#t67">9-4. 四注意事项</a></li></ol><li><a href="#t68">10. 后序</a></li></ol></div>
            </div>
        </li>
        <li>
            <button class="left-fixed-btn csdn-tracking-statistics" data-mod="popu_374" id="com-quick-collect" target="_self">
                <span class="iconbox border_purple"><i class="icon iconfont icon-shoucang"></i></span>
    
            </button>
        </li>
		<li>
          <button class="left-fixed-btn btn-pinglun">
            <span class="iconbox border_purple"><i class="icon iconfont icon-pinglun"></i></span>
          </button>
        </li>
        <li id="share_box">
            <button class="left-fixed-btn  csdn-tracking-statistics" data-mod="popu_375" target="_self">
                <span class="iconbox border_orange"><i class="icon iconfont icon-fenxiang"></i></span>
            </button>
            <div class="bdsharebuttonbox csdn-tracking-statistics bdshare-button-style0-16" data-mod="popu_172" data-bd-bind="1509931523353">
                <div class="outside">
                    <span class="iconbox border_red2"><i class="icon iconfont icon-xinlang"></i></span>
                    <a href="#" class="bds_tsina" data-cmd="tsina" title="分享到新浪微博" target="_blank"> </a>
                </div>
                <div class="outside">
                    <span class="iconbox border_green"><i class="icon iconfont icon-weixin"></i></span>
                    <a href="#" class="bds_weixin" data-cmd="weixin" title="分享到微信" target="_blank"> </a>
                </div>
                <div class="outside">
                    <span class="iconbox border_blue"><i class="icon iconfont icon-QQ"></i></span>
                    <a href="#" class="bds_qzone" data-cmd="qzone" title="分享到QQ空间" target="_blank"> </a>
                </div>
            </div>
        </li>
    </ul>
</div>
<div class="right_fixed" style="right: 3%; display: block;">
  <div class="r_ico">
	<i class="icon iconfont icon-jubao"></i>
	<span class="txt" id="reportBtn">内容举报</span>
  </div>
  <div class="returnTop">
   <i class="icon iconfont icon-fanhuidingbu"></i>
   <span>返回顶部</span>
 </div>
</div>
<div id="pop_win"></div>
<div id="popup_mask"></div>
<div class="pop_CA_cover"></div>
<div class="pop pop_CA">
    <div class="CA_header">
        收藏助手
        <span class="cancel_icon" id="fapancle"></span>
    </div>
    <iframe data-savepage-src="" src="data:text/html;charset=utf-8,%3Chtml%3E%3Chead%3E%0A%3Cbase%20href%3D%22http%3A%2F%2Fblog.csdn.net%2Fruglcc%2Farticle%2Fdetails%2F7814546%22%3E%0A%3C%2Fhead%3E%3Cbody%3E%3C%2Fbody%3E%3C%2Fhtml%3E" id="collectIframe" scrolling="no" width="100%" height="360" frameborder="0"></iframe>
</div>
<!--举报-->
<div id="report_dialog" style="top: 250px; left: 343.5px;"><div id="panel_report">
    <div class="panel_head">不良信息举报</div>
    <form method="post" id="frmReport" class="panel_body">
        <table class="pop_table" cellspacing="4" cellpadding="0" border="0">
            <tbody><tr><td colspan="2">您举报文章：<a href="http://blog.csdn.net/raintungli/article/details/76583070" target="_blank">深度学习：神经网络中的前向传播和反向传播算法推导</a></td></tr>
            <tr>
                <th style="width:60px;">举报原因：</th>
                <td id="panel_reporttype">
                    <label><input class="report_type" id="report_sex" name="report_type" value="1" type="radio">色情</label>
                    <label><input class="report_type" id="report_Politics" name="report_type" value="2" type="radio">政治</label>
                    <label><input class="report_type" id="report_copy" name="report_type" value="3" type="radio">抄袭</label>
                    <label><input class="report_type" id="report_ad" name="report_type" value="4" type="radio">广告</label>
                    <label><input class="report_type" id="report_want" name="report_type" value="5" type="radio">招聘</label>
                    <label><input class="report_type" id="report_call" name="report_type" value="6" type="radio">骂人</label>
                    <br>
                    <label><input class="report_type" id="report_other" name="report_type" value="7" type="radio">其他</label>
                    <input name="report_other_content" id="report_other_content" maxlength="30" style="display: none;" type="text" value="">
                </td>
            </tr>
            <tr id="panel_originalurl" style="display: none;">
                <th>原文地址：</th>
                <td>
                    <input id="originalurl" name="originalurl" style="width: 90%;" type="text" value="http://">
                </td>
            </tr>
            <tr>
                <th id="sp_reason">原因补充：</th>
                <td>
                    <textarea id="report_description" style="width: 300px;" rows="3" name="report_description"></textarea>
                    <p id="sp_n" style="color:#999;margin:0px;padding:0px;">(最多只允许输入30个字)</p>
                </td>
            </tr>
            <tr>
                <td></td>
                <td>
                    <input id="btnSubmitReport" name="submit" class="btn_1" data-savepage-src="http://static.blog.csdn.net/images/btn_submit.jpg" src="data:image/jpeg;resource=39;base64," type="image" align="middle" value="">
                    <span style="padding-left:20px;"></span>
                    <img id="btnCloseReportDialog" data-savepage-src="http://static.blog.csdn.net/images/btn_cancel.jpg" src="data:image/jpeg;resource=40;base64," align="middle">
                    <div id="error" style="color: Red">
                    </div>
                </td>
            </tr>
            </tbody></table>
    </form>
</div>
    <script language="javascript" type="text/javascript"></script>
</div>

<script data-savepage-src="http://c.csdnimg.cn/public/common/libs/bootstrap/js/bootstrap.min.js" src="" type="text/javascript"></script>
<script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/public/res/bower-libs/MathJax/MathJax.js?config=TeX-AMS_HTML" src=""></script>
<script type="text/javascript" data-savepage-src="http://passport.csdn.net/content/loginbox/login.js" src=""></script>

<script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/Skin/skin3-template/js/blog_ver.js?v=2017.042" src=""></script>
<script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/Skin/skin3-template/js/skin2017.js?v=2017.042" src=""></script>
<script type="text/javascript" data-savepage-src="http://static.blog.csdn.net/scripts/cnick.js" src=""></script>
<script></script>
<script type="text/javascript"></script>


<script type="text/javascript"></script>


<div style="position:fixed; top:0; left:0; overflow:hidden;"><input style="position:absolute; left:-300px;" id="focus_retriever" readonly="true" type="text" value=""></div><div style="position: absolute; width: 0px; height: 0px; overflow: hidden; padding: 0px; border: 0px none; margin: 0px;"><div id="MathJax_Font_Test" style="position: absolute; visibility: hidden; top: 0px; left: 0px; width: auto; padding: 0px; border: 0px none; margin: 0px; white-space: nowrap; text-align: left; text-indent: 0px; text-transform: none; line-height: normal; letter-spacing: normal; word-spacing: normal; font-size: 40px; font-weight: normal; font-style: normal; font-size-adjust: none; font-family: MathJax_Size4,sans-serif;"></div></div></body></html>